• Dmitry Kazakov's avatar
    Added a concept of "safe" assert · 14628395
    Dmitry Kazakov authored
    If you add some sanity check to the code and you are 100% sure
    that failing this assert and recovering after it will not break
    Krita and the user will be able to continue his work, you can use
    "safe asserts". By default they don't show anything to the user,
    just dump a message to the terminal and take the recovery branch
    almost silently.
    
    If you want to make these assert produce real warning messages you
    should set a cmake option for it:
    
    cmake -DHIDE_SAFE_ASSERTS=OFF .
    
    This is highly recommended for developers, and not recommended for
    painters who do real work of those builds of Krita.
    
    Now rules when to use "safe" asserts. You can use them if the following
    conditions are met:
    
    1) The condition in the assert shows that a real *bug* has happened. It
       is not just a warning. It is a bug that should be fixed.
    
    2) The recovery branch will *workaround* the bug and the user will be
       able to continue his work *as if nothing has happened*. Again, please
       mark the assert "safe" if and only if you are 100% sure Krita will
       not crash in a minute after you faced that bug. The user is not notified
       about this bug, so he is not going to take any emergency steps like
       saving his work and restarting Krita!
    
    3) If you think that Krita should be better restarted after this bug,
       please use a usual KIS_ASSRT_RECOVER.
    
    CC:kimageshop@kde.org
    14628395
exr_export.cc 4.72 KB