When closing a document within about one second of changing the visibility of a layer, Krita will receive a segmentation fault. (It is easiest to reproduce using a document with no changes, since you won't be asked about saving it.) Tested in: 4.1.0-pre-alpha (git aa81a25) 4.0.0 (git c45c4c5) Thread 1 "krita" received signal SIGSEGV, Segmentation fault. 0x00007ffff75a49ae in KisNodeModel::processUpdateQueue (this=0x9faf890) at src/krita/libs/ui/kis_node_model.cpp:387 387 QModelIndex index = m_d->indexConverter->indexFromDummy(dummy); (gdb) bt #0 0x00007ffff75a49ae in KisNodeModel::processUpdateQueue (this=0x9faf890) at src/krita/libs/ui/kis_node_model.cpp:387 #1 0x00007ffff789c3f5 in KisNodeModel::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at builds/krita_standard/libs/ui/moc_kis_node_model.cpp:129 #2 0x00007ffff5b34cc9 in QMetaObject::activate(QObject*, int, int, void**) () from /opt/Qt-5.9/lib/libQt5Core.so.5 #3 0x00007ffff5bae3c7 in QTimer::timeout(QTimer::QPrivateSignal) () from /opt/Qt-5.9/lib/libQt5Core.so.5 #4 0x00007ffff5b414e8 in QTimer::timerEvent(QTimerEvent*) () from /opt/Qt-5.9/lib/libQt5Core.so.5 #5 0x00007ffff5b35cc3 in QObject::event(QEvent*) () from /opt/Qt-5.9/lib/libQt5Core.so.5 #6 0x00007ffff647a3fc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /opt/Qt-5.9/lib/libQt5Widgets.so.5 #7 0x00007ffff6481e07 in QApplication::notify(QObject*, QEvent*) () from /opt/Qt-5.9/lib/libQt5Widgets.so.5 #8 0x00007ffff77b1247 in KisApplication::notify (this=<optimized out>, receiver=0x9fb75e0, event=0x7fffffffd5e0) at src/krita/libs/ui/KisApplication.cpp:652 #9 0x00007ffff5b08d28 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /opt/Qt-5.9/lib/libQt5Core.so.5 #10 0x00007ffff5b5c2fe in QTimerInfoList::activateTimers() () from /opt/Qt-5.9/lib/libQt5Core.so.5 #11 0x00007ffff5b5cb61 in ?? () from /opt/Qt-5.9/lib/libQt5Core.so.5 #12 0x00007fffee921197 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #13 0x00007fffee9213f0 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #14 0x00007fffee92149c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #15 0x00007ffff5b5d6bf in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /opt/Qt-5.9/lib/libQt5Core.so.5 #16 0x00007ffff5b06f0a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /opt/Qt-5.9/lib/libQt5Core.so.5 #17 0x00007ffff5b0f9b4 in QCoreApplication::exec() () from /opt/Qt-5.9/lib/libQt5Core.so.5 #18 0x000000000040520a in main (argc=1, argv=<optimized out>) at src/krita/krita/main.cc:361
Confirming this https://webmshare.com/YeEyN Build Date & Platform: krita 4.1.0-pre-alpha Xubuntu 17.10 Krita Lime https://launchpad.net/~kritalime/+archive/ubuntu/ppa Additional Information: Any other useful information. https://webmshare.com/YeEyN Recorded video of said crash (gdb) bt #0 0x00007ffff75beabe in KisNodeModel::processUpdateQueue() () at /usr/lib/x86_64-linux-gnu/libkritaui.so.17 #1 0x00007ffff78a66b5 in () at /usr/lib/x86_64-linux-gnu/libkritaui.so.17 #2 0x00007ffff53888e5 in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #3 0x00007ffff53953b7 in QTimer::timeout(QTimer::QPrivateSignal) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #4 0x00007ffff5395718 in QTimer::timerEvent(QTimerEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #5 0x00007ffff538940b in QObject::event(QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #6 0x00007ffff60d446c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 #7 0x00007ffff60dbd34 in QApplication::notify(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 #8 0x00007ffff77c13f7 in KisApplication::notify(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libkritaui.so.17 #9 0x00007ffff5359de8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #10 0x00007ffff53b191e in QTimerInfoList::activateTimers() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #11 0x00007ffff53b2119 in () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #12 0x00007fffece92fb7 in g_main_context_dispatch () at /lib/x86_64-linux-gnu/libglib-2.0.so.0 #13 0x00007fffece931f0 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0 #14 0x00007fffece9327c in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0 #15 0x00007ffff53b247f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #16 0x00007ffff5357e3a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #17 0x00007ffff5360da4 in QCoreApplication::exec() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #18 0x0000555555845c1e in main ()
Changing the importance and repasting my backtrace with symbols Thread 1 "krita" received signal SIGSEGV, Segmentation fault. 0x00007ffff7008d34 in KisNodeModel::processUpdateQueue (this=0x555561a1c1c0) at /home/managor/Sourcebuilding/krita/libs/ui/kis_node_model.cpp:387 387 QModelIndex index = m_d->indexConverter->indexFromDummy(dummy); (gdb) bt #0 0x00007ffff7008d34 in KisNodeModel::processUpdateQueue() (this=0x555561a1c1c0) at /home/managor/Sourcebuilding/krita/libs/ui/kis_node_model.cpp:387 #1 0x00007ffff73ecd9b in KisNodeModel::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (_o=0x555561a1c1c0, _c=QMetaObject::InvokeMetaMethod, _id=9, _a=0x7fffffffd710) at /home/managor/Sourcebuilding/b-krita/libs/ui/kritaui_autogen/EWIEGA46WW/moc_kis_node_model.cpp:129 #2 0x00007ffff4ad98e5 in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #3 0x00007ffff4ae63b7 in QTimer::timeout(QTimer::QPrivateSignal) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #4 0x00007ffff4ae6718 in QTimer::timerEvent(QTimerEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #5 0x00007ffff4ada40b in QObject::event(QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #6 0x00007ffff582546c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 #7 0x00007ffff582cd34 in QApplication::notify(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 #8 0x00007ffff72ca717 in KisApplication::notify(QObject*, QEvent*) (this=0x7fffffffde20, receiver=0x555561a22b90, event=0x7fffffffdaa0) at /home/managor/Sourcebuilding/krita/libs/ui/KisApplication.cpp:626 #9 0x00007ffff4aaade8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #10 0x00007ffff4b0291e in QTimerInfoList::activateTimers() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #11 0x00007ffff4b03119 in () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #12 0x00007fffec03cfb7 in g_main_context_dispatch () at /lib/x86_64-linux-gnu/libglib-2.0.so.0 #13 0x00007fffec03d1f0 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0 #14 0x00007fffec03d27c in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0 #15 0x00007ffff4b0347f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #16 0x00007ffff4aa8e3a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #17 0x00007ffff4ab1da4 in QCoreApplication::exec() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #18 0x0000555555e903cc in main(int, char**) (argc=1, argv=0x7fffffffdf88) at /home/managor/Sourcebuilding/krita/krita/main.cc:419
Hi, Nicholas and Antti! I think the bug should now be fixed after my commit 06f53d4d8f378b28b50b88641659b4dc54028c2d. I cannot reproduce it anymore in master. Please check the current nightly AppImage if you can still reproduce the bug: https://binary-factory.kde.org/job/Krita_Nightly_Appimage_Build/ If you still see the bug, please reopen this report :)