Bug 365992 - Krita Crashes on closing document
Summary: Krita Crashes on closing document
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: General (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2016-07-22 19:42 UTC by Raghavendra kamath
Modified: 2016-09-26 20:27 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Raghavendra kamath 2016-07-22 19:42:54 UTC
Application: krita (3.0.1 Alpha (git f594e3e))
 (Compiled from sources)
Qt Version: 5.7.0
Frameworks Version: 5.24.0
Operating System: Linux 4.6.4-1-ARCH x86_64
Distribution: "Arch Linux"

-- Information about the crash:
- What I was doing when the application crashed:
I closed a document after working on it. Some times krita crashes when I close last remaining document after closing multiple documents.

I build krita from git on linux

The crash can be reproduced sometimes.

-- Backtrace:
Application: Krita (krita), signal: Aborted
Using host libthread_db library "/usr/lib/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f4e0546c840 (LWP 7506))]

Thread 5 (Thread 0x7f4dcbfff700 (LWP 7514)):
#0  0x00007f4df96f00af in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f4dfda10c2b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQt5Core.so.5
#2  0x00007f4dfeaed851 in ?? () from /usr/lib/libQt5Widgets.so.5
#3  0x00007f4dfda0fd78 in ?? () from /usr/lib/libQt5Core.so.5
#4  0x00007f4df96ea484 in start_thread () from /usr/lib/libpthread.so.0
#5  0x00007f4dfce086dd in clone () from /usr/lib/libc.so.6

Thread 4 (Thread 0x7f4dd0844700 (LWP 7512)):
#0  0x00007f4df96f00af in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f4dfda10c2b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQt5Core.so.5
#2  0x00007f4dfda09e26 in QSemaphore::tryAcquire(int, int) () from /usr/lib/libQt5Core.so.5
#3  0x00007f4e04000d13 in KisTileDataSwapper::waitForWork (this=<optimized out>) at /home/raghu/kf5/src/krita/libs/image/tiles3/swap/kis_tile_data_swapper.cpp:86
#4  0x00007f4e04000f1a in KisTileDataSwapper::run (this=0x7f4e044c9f20 <(anonymous namespace)::Q_QGS_s_instance::innerFunction()::holder+64>) at /home/raghu/kf5/src/krita/libs/image/tiles3/swap/kis_tile_data_swapper.cpp:92
#5  0x00007f4dfda0fd78 in ?? () from /usr/lib/libQt5Core.so.5
#6  0x00007f4df96ea484 in start_thread () from /usr/lib/libpthread.so.0
#7  0x00007f4dfce086dd in clone () from /usr/lib/libc.so.6

Thread 3 (Thread 0x7f4dd1045700 (LWP 7511)):
#0  0x00007f4df96f00af in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f4dfda10c2b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQt5Core.so.5
#2  0x00007f4dfda09b33 in QSemaphore::acquire(int) () from /usr/lib/libQt5Core.so.5
#3  0x00007f4e03fe558d in KisTileDataPooler::waitForWork (this=0x7f4e044c9ee0 <(anonymous namespace)::Q_QGS_s_instance::innerFunction()::holder>) at /home/raghu/kf5/src/krita/libs/image/tiles3/kis_tile_data_pooler.cc:165
#4  KisTileDataPooler::run (this=0x7f4e044c9ee0 <(anonymous namespace)::Q_QGS_s_instance::innerFunction()::holder>) at /home/raghu/kf5/src/krita/libs/image/tiles3/kis_tile_data_pooler.cc:187
#5  0x00007f4dfda0fd78 in ?? () from /usr/lib/libQt5Core.so.5
#6  0x00007f4df96ea484 in start_thread () from /usr/lib/libpthread.so.0
#7  0x00007f4dfce086dd in clone () from /usr/lib/libc.so.6

Thread 2 (Thread 0x7f4de3cb2700 (LWP 7508)):
#0  0x00007f4df7516044 in g_mutex_unlock () from /usr/lib/libglib-2.0.so.0
#1  0x00007f4df74d1839 in g_main_context_query () from /usr/lib/libglib-2.0.so.0
#2  0x00007f4df74d1f48 in ?? () from /usr/lib/libglib-2.0.so.0
#3  0x00007f4df74d20ec in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#4  0x00007f4dfdc3e59b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#5  0x00007f4dfdbe80da in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#6  0x00007f4dfda0b0f3 in QThread::exec() () from /usr/lib/libQt5Core.so.5
#7  0x00007f4df9037e75 in ?? () from /usr/lib/libQt5DBus.so.5
#8  0x00007f4dfda0fd78 in ?? () from /usr/lib/libQt5Core.so.5
#9  0x00007f4df96ea484 in start_thread () from /usr/lib/libpthread.so.0
#10 0x00007f4dfce086dd in clone () from /usr/lib/libc.so.6

Thread 1 (Thread 0x7f4e0546c840 (LWP 7506)):
[KCrash Handler]
#5  0x00007f4dfcd54295 in raise () from /usr/lib/libc.so.6
#6  0x00007f4dfcd556da in abort () from /usr/lib/libc.so.6
#7  0x00007f4dfd9f64a1 in QMessageLogger::fatal(char const*, ...) const () from /usr/lib/libQt5Core.so.5
#8  0x00007f4dffed272d in kis_assert_common (assertion=assertion@entry=0x7f4e04fdf5ae "!sanityCheckPointer.isValid()", file=file@entry=0x7f4e04fdf988 "/home/raghu/kf5/src/krita/libs/ui/KisDocument.cpp", line=line@entry=578, throwException=throwException@entry=false, isIgnorable=isIgnorable@entry=false) at /home/raghu/kf5/src/krita/libs/global/kis_assert.cpp:90
#9  0x00007f4dffed2a9a in kis_assert_recoverable (assertion=assertion@entry=0x7f4e04fdf5ae "!sanityCheckPointer.isValid()", file=file@entry=0x7f4e04fdf988 "/home/raghu/kf5/src/krita/libs/ui/KisDocument.cpp", line=line@entry=578) at /home/raghu/kf5/src/krita/libs/global/kis_assert.cpp:103
#10 0x00007f4e04e43ee8 in KisDocument::~KisDocument (this=0x8c93260, __in_chrg=<optimized out>) at /home/raghu/kf5/src/krita/libs/ui/KisDocument.cpp:578
#11 0x00007f4e04e43f59 in KisDocument::~KisDocument (this=0x8c93260, __in_chrg=<optimized out>) at /home/raghu/kf5/src/krita/libs/ui/KisDocument.cpp:581
#12 0x00007f4dfdc16380 in QObject::event(QEvent*) () from /usr/lib/libQt5Core.so.5
#13 0x00007f4dfe8c9e3c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#14 0x00007f4dfe8d15b1 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#15 0x00007f4e04e35797 in KisApplication::notify (this=<optimized out>, receiver=0x8c93260, event=0xd3cdcf0) at /home/raghu/kf5/src/krita/libs/ui/KisApplication.cpp:505
#16 0x00007f4dfdbe9c80 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#17 0x00007f4dfdbec3fd in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/libQt5Core.so.5
#18 0x00007f4dfdc3e173 in ?? () from /usr/lib/libQt5Core.so.5
#19 0x00007f4df74d1dd7 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#20 0x00007f4df74d2040 in ?? () from /usr/lib/libglib-2.0.so.0
#21 0x00007f4df74d20ec in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#22 0x00007f4dfdc3e57f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#23 0x00007f4e04e64959 in KisMainWindow::slotProgress (this=0x83e33c0, value=100) at /home/raghu/kf5/src/krita/libs/ui/KisMainWindow.cpp:1804
#24 0x00007f4e00fa24bd in KoProgressUpdater::~KoProgressUpdater (this=0x102a7ad0, __in_chrg=<optimized out>) at /home/raghu/kf5/src/krita/libs/widgetutils/KoProgressUpdater.cpp:76
#25 0x00007f4e00fa2709 in KoProgressUpdater::~KoProgressUpdater (this=0x102a7ad0, __in_chrg=<optimized out>) at /home/raghu/kf5/src/krita/libs/widgetutils/KoProgressUpdater.cpp:89
#26 0x00007f4e04e3ef67 in KisDocument::clearFileProgressUpdater (this=0x8c93260) at /home/raghu/kf5/src/krita/libs/ui/KisDocument.cpp:2384
#27 0x00007f4e04e456ed in KisDocument::saveFile (this=0x8c93260) at /home/raghu/kf5/src/krita/libs/ui/KisDocument.cpp:713
#28 0x00007f4e04e45de1 in KisDocument::save (this=this@entry=0x8c93260) at /home/raghu/kf5/src/krita/libs/ui/KisDocument.cpp:2138
#29 0x00007f4e04e46150 in KisDocument::saveAs (this=this@entry=0x8c93260, kurl=...) at /home/raghu/kf5/src/krita/libs/ui/KisDocument.cpp:2111
#30 0x00007f4e04e46339 in KisDocument::exportDocument (this=this@entry=0x8c93260, _url=...) at /home/raghu/kf5/src/krita/libs/ui/KisDocument.cpp:625
#31 0x00007f4e04e6cc24 in KisMainWindow::saveDocument (this=this@entry=0x83e33c0, document=0x8c93260, saveas=<optimized out>, saveas@entry=true, silent=silent@entry=false, specialOutputFlag=specialOutputFlag@entry=0) at /home/raghu/kf5/src/krita/libs/ui/KisMainWindow.cpp:1098
#32 0x00007f4e04e6d314 in KisMainWindow::slotFileSaveAs (this=0x83e33c0) at /home/raghu/kf5/src/krita/libs/ui/KisMainWindow.cpp:1449
#33 0x00007f4e04e6d3ff in KisMainWindow::slotExportFile (this=0x83e33c0) at /home/raghu/kf5/src/krita/libs/ui/KisMainWindow.cpp:1919
#34 0x00007f4e04e71d69 in KisMainWindow::qt_static_metacall (_o=0x83e33c0, _c=<optimized out>, _id=<optimized out>, _a=0x7fffe914bc30) at /home/raghu/kf5/build/libs/ui/moc_KisMainWindow.cpp:362
#35 0x00007f4dfdc154e9 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/libQt5Core.so.5
#36 0x00007f4dfe8c3472 in QAction::triggered(bool) () from /usr/lib/libQt5Widgets.so.5
#37 0x00007f4dfe8c5e60 in QAction::activate(QAction::ActionEvent) () from /usr/lib/libQt5Widgets.so.5
#38 0x00007f4dfe8c67dc in QAction::event(QEvent*) () from /usr/lib/libQt5Widgets.so.5
#39 0x00007f4dfe8c9e3c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#40 0x00007f4dfe8d15b1 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#41 0x00007f4e04e35797 in KisApplication::notify (this=<optimized out>, receiver=0x90b4b80, event=0x7fffe914bf80) at /home/raghu/kf5/src/krita/libs/ui/KisApplication.cpp:505
#42 0x00007f4dfdbe9c80 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#43 0x00007f4dfe1646a8 in QShortcutMap::dispatchEvent(QKeyEvent*) () from /usr/lib/libQt5Gui.so.5
#44 0x00007f4dfe164769 in QShortcutMap::tryShortcut(QKeyEvent*) () from /usr/lib/libQt5Gui.so.5
#45 0x00007f4dfe11d2cd in QWindowSystemInterface::handleShortcutEvent(QWindow*, unsigned long, int, QFlags<Qt::KeyboardModifier>, unsigned int, unsigned int, unsigned int, QString const&, bool, unsigned short) () from /usr/lib/libQt5Gui.so.5
#46 0x00007f4dfe1348a4 in QGuiApplicationPrivate::processKeyEvent(QWindowSystemInterfacePrivate::KeyEvent*) () from /usr/lib/libQt5Gui.so.5
#47 0x00007f4dfe139c45 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () from /usr/lib/libQt5Gui.so.5
#48 0x00007f4dfe117cbb in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Gui.so.5
#49 0x00007f4df2757310 in ?? () from /usr/lib/libQt5XcbQpa.so.5
#50 0x00007f4df74d1dd7 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#51 0x00007f4df74d2040 in ?? () from /usr/lib/libglib-2.0.so.0
#52 0x00007f4df74d20ec in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#53 0x00007f4dfdc3e57f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#54 0x00007f4dfdbe80da in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#55 0x00007f4dfdbf05cc in QCoreApplication::exec() () from /usr/lib/libQt5Core.so.5
#56 0x0000000000404c39 in main (argc=<optimized out>, argv=<optimized out>) at /home/raghu/kf5/src/krita/krita/main.cc:230

Possible duplicates by query: bug 365985, bug 363958.

Reported using DrKonqi
Comment 1 wolthera 2016-07-23 18:36:34 UTC
Yeah, I think I can reproduce this on on ubuntu 16.04 with Krita git 0e4fa6d

Relevant part of backtrace:

Thread 1 (Thread 0x7ffff7f0f8c0 (LWP 10483)):
#0  0x00007ffff4bb8418 in __GI_raise (sig=sig@entry=6)
    at ../sysdeps/unix/sysv/linux/raise.c:54
#1  0x00007ffff4bba01a in __GI_abort () at abort.c:89
#2  0x00007ffff55765fe in QMessageLogger::fatal(char const*, ...) const ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#3  0x00007ffff13f184f in kis_assert_common (
    assertion=assertion@entry=0x7ffff7a7e0c1 "!sanityCheckPointer.isValid()", 
    file=file@entry=0x7ffff7a7e4b0 "/home/krita/kde/src/krita/libs/ui/KisDocument.cpp", line=line@entry=578, throwException=throwException@entry=false, 
    isIgnorable=isIgnorable@entry=false)
    at /home/krita/kde/src/krita/libs/global/kis_assert.cpp:90
#4  0x00007ffff13f1bba in kis_assert_recoverable (
    assertion=assertion@entry=0x7ffff7a7e0c1 "!sanityCheckPointer.isValid()", 
    file=file@entry=0x7ffff7a7e4b0 "/home/krita/kde/src/krita/libs/ui/KisDocument.cpp", line=line@entry=578)
---Type <return> to continue, or q <return> to quit---
    at /home/krita/kde/src/krita/libs/global/kis_assert.cpp:103
#5  0x00007ffff78e6d60 in KisDocument::~KisDocument (this=0x6ce01a0, 
    __in_chrg=<optimized out>)
    at /home/krita/kde/src/krita/libs/ui/KisDocument.cpp:578
#6  0x00007ffff78e6de9 in KisDocument::~KisDocument (this=0x6ce01a0, 
    __in_chrg=<optimized out>)
    at /home/krita/kde/src/krita/libs/ui/KisDocument.cpp:581
#7  0x00007ffff577a300 in QObject::event(QEvent*) ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#8  0x00007ffff654304c in QApplicationPrivate::notify_helper(QObject*, QEvent*)
    () from /home/krita/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#9  0x00007ffff6547488 in QApplication::notify(QObject*, QEvent*) ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#10 0x00007ffff78d8567 in KisApplication::notify (this=<optimized out>, 
    receiver=0x6ce01a0, event=0x10a1c0e0)
    at /home/krita/kde/src/krita/libs/ui/KisApplication.cpp:505
#11 0x00007ffff574fe80 in QCoreApplication::notifyInternal2(QObject*, QEvent*)
    () from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#12 0x00007ffff5752673 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#13 0x00007ffff579f0f3 in ?? ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#14 0x00007fffee854127 in g_main_context_dispatch ()
---Type <return> to continue, or q <return> to quit---
   from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#15 0x00007fffee854380 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#16 0x00007fffee85442c in g_main_context_iteration ()
   from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#17 0x00007ffff579f4e7 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#18 0x00007ffff574defa in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#19 0x00007ffff5755d9d in QCoreApplication::exec() ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#20 0x0000000000404bc6 in main (argc=1, argv=<optimized out>)
    at /home/krita/kde/src/krita/krita/main.cc:230
Comment 2 Dmitry Kazakov 2016-08-11 14:44:43 UTC
Git commit 619be10b7f59cd5a26168144a5d44eeacdc951e4 by Dmitry Kazakov.
Committed on 11/08/2016 at 14:42.
Pushed by dkazakov into branch 'master'.

Fix crash on saving a document and closing it rigth after that

Fixes T3351

M  +11   -4    libs/ui/KisMainWindow.cpp
M  +11   -0    libs/ui/KisMainWindow.h
M  +10   -0    libs/ui/KisPart.cpp

http://commits.kde.org/krita/619be10b7f59cd5a26168144a5d44eeacdc951e4
Comment 3 Raghavendra kamath 2016-08-17 10:45:20 UTC
I recently experienced this twice.

Krita crashed while closing the program

here is the back trace

Application: Krita (krita), signal: Aborted
Using host libthread_db library "/usr/lib/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f9724632800 (LWP 3131))]

Thread 4 (Thread 0x7f96ee03b700 (LWP 3136)):
#0  0x00007f971887210f in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f971cb93c2b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQt5Core.so.5
#2  0x00007f971cb8ce26 in QSemaphore::tryAcquire(int, int) () from /usr/lib/libQt5Core.so.5
#3  0x00007f9723199173 in KisTileDataSwapper::waitForWork (this=<optimized out>) at /home/raghu/kf5/src/krita/libs/image/tiles3/swap/kis_tile_data_swapper.cpp:86
#4  0x00007f972319937a in KisTileDataSwapper::run (this=0x7f972366d520 <(anonymous namespace)::Q_QGS_s_instance::innerFunction()::holder+64>) at /home/raghu/kf5/src/krita/libs/image/tiles3/swap/kis_tile_data_swapper.cpp:92
#5  0x00007f971cb92d78 in ?? () from /usr/lib/libQt5Core.so.5
#6  0x00007f971886c454 in start_thread () from /usr/lib/libpthread.so.0
#7  0x00007f971bf8d7df in clone () from /usr/lib/libc.so.6

Thread 3 (Thread 0x7f96ee83c700 (LWP 3135)):
#0  0x00007f971887210f in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f971cb93c2b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQt5Core.so.5
#2  0x00007f971cb8cb33 in QSemaphore::acquire(int) () from /usr/lib/libQt5Core.so.5
#3  0x00007f972317d9ed in KisTileDataPooler::waitForWork (this=0x7f972366d4e0 <(anonymous namespace)::Q_QGS_s_instance::innerFunction()::holder>) at /home/raghu/kf5/src/krita/libs/image/tiles3/kis_tile_data_pooler.cc:165
#4  KisTileDataPooler::run (this=0x7f972366d4e0 <(anonymous namespace)::Q_QGS_s_instance::innerFunction()::holder>) at /home/raghu/kf5/src/krita/libs/image/tiles3/kis_tile_data_pooler.cc:187
#5  0x00007f971cb92d78 in ?? () from /usr/lib/libQt5Core.so.5
#6  0x00007f971886c454 in start_thread () from /usr/lib/libpthread.so.0
#7  0x00007f971bf8d7df in clone () from /usr/lib/libc.so.6

Thread 2 (Thread 0x7f970304d700 (LWP 3133)):
#0  0x00007f971bf804ed in read () from /usr/lib/libc.so.6
#1  0x00007f9716696c80 in ?? () from /usr/lib/libglib-2.0.so.0
#2  0x00007f9716653ab4 in g_main_context_check () from /usr/lib/libglib-2.0.so.0
#3  0x00007f9716653f74 in ?? () from /usr/lib/libglib-2.0.so.0
#4  0x00007f97166540ec in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#5  0x00007f971cdc159b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#6  0x00007f971cd6b0da in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#7  0x00007f971cb8e0f3 in QThread::exec() () from /usr/lib/libQt5Core.so.5
#8  0x00007f97181b9e75 in ?? () from /usr/lib/libQt5DBus.so.5
#9  0x00007f971cb92d78 in ?? () from /usr/lib/libQt5Core.so.5
#10 0x00007f971886c454 in start_thread () from /usr/lib/libpthread.so.0
#11 0x00007f971bf8d7df in clone () from /usr/lib/libc.so.6

Thread 1 (Thread 0x7f9724632800 (LWP 3131)):
[KCrash Handler]
#5  0x00007f971bed804f in raise () from /usr/lib/libc.so.6
#6  0x00007f971bed947a in abort () from /usr/lib/libc.so.6
#7  0x00007f971cb794a1 in QMessageLogger::fatal(char const*, ...) const () from /usr/lib/libQt5Core.so.5
#8  0x00007f971f05581d in kis_assert_common (assertion=assertion@entry=0x7f972419ecce "!sanityCheckPointer.isValid()", file=file@entry=0x7f972419f0b8 "/home/raghu/kf5/src/krita/libs/ui/KisDocument.cpp", line=line@entry=578, throwException=throwException@entry=false, isIgnorable=isIgnorable@entry=false) at /home/raghu/kf5/src/krita/libs/global/kis_assert.cpp:90
#9  0x00007f971f055b8a in kis_assert_recoverable (assertion=assertion@entry=0x7f972419ecce "!sanityCheckPointer.isValid()", file=file@entry=0x7f972419f0b8 "/home/raghu/kf5/src/krita/libs/ui/KisDocument.cpp", line=line@entry=578) at /home/raghu/kf5/src/krita/libs/global/kis_assert.cpp:103
#10 0x00007f9724000f98 in KisDocument::~KisDocument (this=0x9d37cd0, __in_chrg=<optimized out>) at /home/raghu/kf5/src/krita/libs/ui/KisDocument.cpp:578
#11 0x00007f9724001019 in KisDocument::~KisDocument (this=0x9d37cd0, __in_chrg=<optimized out>) at /home/raghu/kf5/src/krita/libs/ui/KisDocument.cpp:581
#12 0x00007f971cd99380 in QObject::event(QEvent*) () from /usr/lib/libQt5Core.so.5
#13 0x00007f971da4ce3c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#14 0x00007f971da545b1 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#15 0x00007f9723ff28b7 in KisApplication::notify (this=<optimized out>, receiver=0x9d37cd0, event=0x7f955924c680) at /home/raghu/kf5/src/krita/libs/ui/KisApplication.cpp:510
#16 0x00007f971cd6cc80 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#17 0x00007f971cd6f3fd in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/libQt5Core.so.5
#18 0x00007f971cdc1173 in ?? () from /usr/lib/libQt5Core.so.5
#19 0x00007f9716653dd7 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#20 0x00007f9716654040 in ?? () from /usr/lib/libglib-2.0.so.0
#21 0x00007f97166540ec in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#22 0x00007f971cdc157f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#23 0x00007f971cd6b0da in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#24 0x00007f971cd735cc in QCoreApplication::exec() () from /usr/lib/libQt5Core.so.5
#25 0x0000000000404bb9 in main (argc=<optimized out>, argv=<optimized out>) at /home/raghu/kf5/src/krita/krita/main.cc:231
Comment 4 Raghavendra kamath 2016-09-08 10:55:09 UTC
This is still hapenning and here is a new back trace.

I mostly encounter this when editing multiple files and close one or more of them

Application: Krita (krita), signal: Aborted
Using host libthread_db library "/usr/lib/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f1f3f2a8800 (LWP 2588))]

Thread 5 (Thread 0x7f1ef77fe700 (LWP 2602)):
#0  0x00007f1f334b710f in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f1f377f8c2b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQt5Core.so.5
#2  0x00007f1f388d5851 in ?? () from /usr/lib/libQt5Widgets.so.5
#3  0x00007f1f377f7d78 in ?? () from /usr/lib/libQt5Core.so.5
#4  0x00007f1f334b1454 in start_thread () from /usr/lib/libpthread.so.0
#5  0x00007f1f36bf27df in clone () from /usr/lib/libc.so.6

Thread 4 (Thread 0x7f1f08dce700 (LWP 2592)):
#0  0x00007f1f36bc1ffd in nanosleep () from /usr/lib/libc.so.6
#1  0x00007f1f3789d1ed in ?? () from /usr/lib/libQt5Core.so.5
#2  0x00007f1f377f7108 in QThread::msleep(unsigned long) () from /usr/lib/libQt5Core.so.5
#3  0x00007f1f3ddff6fa in KisTileDataSwapper::run (this=0x7f1f3e2d4520 <(anonymous namespace)::Q_QGS_s_instance::innerFunction()::holder+64>) at /home/raghu/kf5/src/krita/libs/image/tiles3/swap/kis_tile_data_swapper.cpp:97
#4  0x00007f1f377f7d78 in ?? () from /usr/lib/libQt5Core.so.5
#5  0x00007f1f334b1454 in start_thread () from /usr/lib/libpthread.so.0
#6  0x00007f1f36bf27df in clone () from /usr/lib/libc.so.6

Thread 3 (Thread 0x7f1f095cf700 (LWP 2591)):
#0  0x00007f1f334b710f in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f1f377f8c2b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQt5Core.so.5
#2  0x00007f1f377f1b33 in QSemaphore::acquire(int) () from /usr/lib/libQt5Core.so.5
#3  0x00007f1f3dde3d7d in KisTileDataPooler::waitForWork (this=0x7f1f3e2d44e0 <(anonymous namespace)::Q_QGS_s_instance::innerFunction()::holder>) at /home/raghu/kf5/src/krita/libs/image/tiles3/kis_tile_data_pooler.cc:165
#4  KisTileDataPooler::run (this=0x7f1f3e2d44e0 <(anonymous namespace)::Q_QGS_s_instance::innerFunction()::holder>) at /home/raghu/kf5/src/krita/libs/image/tiles3/kis_tile_data_pooler.cc:187
#5  0x00007f1f377f7d78 in ?? () from /usr/lib/libQt5Core.so.5
#6  0x00007f1f334b1454 in start_thread () from /usr/lib/libpthread.so.0
#7  0x00007f1f36bf27df in clone () from /usr/lib/libc.so.6

Thread 2 (Thread 0x7f1f1dc08700 (LWP 2590)):
#0  0x00007f1f36be54ed in read () from /usr/lib/libc.so.6
#1  0x00007f1f312dbbc0 in ?? () from /usr/lib/libglib-2.0.so.0
#2  0x00007f1f31298b36 in g_main_context_check () from /usr/lib/libglib-2.0.so.0
#3  0x00007f1f31299004 in ?? () from /usr/lib/libglib-2.0.so.0
#4  0x00007f1f3129917c in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#5  0x00007f1f37a2659b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#6  0x00007f1f379d00da in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#7  0x00007f1f377f30f3 in QThread::exec() () from /usr/lib/libQt5Core.so.5
#8  0x00007f1f32dfee75 in ?? () from /usr/lib/libQt5DBus.so.5
#9  0x00007f1f377f7d78 in ?? () from /usr/lib/libQt5Core.so.5
#10 0x00007f1f334b1454 in start_thread () from /usr/lib/libpthread.so.0
#11 0x00007f1f36bf27df in clone () from /usr/lib/libc.so.6

Thread 1 (Thread 0x7f1f3f2a8800 (LWP 2588)):
[KCrash Handler]
#5  0x00007f1f36b3d04f in raise () from /usr/lib/libc.so.6
#6  0x00007f1f36b3e47a in abort () from /usr/lib/libc.so.6
#7  0x00007f1f377de4a1 in QMessageLogger::fatal(char const*, ...) const () from /usr/lib/libQt5Core.so.5
#8  0x00007f1f39cb982d in kis_assert_common (assertion=assertion@entry=0x7f1f3ee1004e "!sanityCheckPointer.isValid()", file=file@entry=0x7f1f3ee10438 "/home/raghu/kf5/src/krita/libs/ui/KisDocument.cpp", line=line@entry=578, throwException=throwException@entry=false, isIgnorable=isIgnorable@entry=false) at /home/raghu/kf5/src/krita/libs/global/kis_assert.cpp:90
#9  0x00007f1f39cb9b9a in kis_assert_recoverable (assertion=assertion@entry=0x7f1f3ee1004e "!sanityCheckPointer.isValid()", file=file@entry=0x7f1f3ee10438 "/home/raghu/kf5/src/krita/libs/ui/KisDocument.cpp", line=line@entry=578) at /home/raghu/kf5/src/krita/libs/global/kis_assert.cpp:103
#10 0x00007f1f3ec7b1a8 in KisDocument::~KisDocument (this=0x124540b0, __in_chrg=<optimized out>) at /home/raghu/kf5/src/krita/libs/ui/KisDocument.cpp:578
#11 0x00007f1f3ec7b229 in KisDocument::~KisDocument (this=0x124540b0, __in_chrg=<optimized out>) at /home/raghu/kf5/src/krita/libs/ui/KisDocument.cpp:581
#12 0x00007f1f379fe380 in QObject::event(QEvent*) () from /usr/lib/libQt5Core.so.5
#13 0x00007f1f386b1e3c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#14 0x00007f1f386b95b1 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#15 0x00007f1f3ec6c9e7 in KisApplication::notify (this=<optimized out>, receiver=0x124540b0, event=0xc4922a0) at /home/raghu/kf5/src/krita/libs/ui/KisApplication.cpp:510
#16 0x00007f1f379d1c80 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#17 0x00007f1f379d43fd in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/libQt5Core.so.5
#18 0x00007f1f37a26173 in ?? () from /usr/lib/libQt5Core.so.5
#19 0x00007f1f31298e67 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#20 0x00007f1f312990d0 in ?? () from /usr/lib/libglib-2.0.so.0
#21 0x00007f1f3129917c in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#22 0x00007f1f37a2657f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#23 0x00007f1f379d00da in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#24 0x00007f1f379d85cc in QCoreApplication::exec() () from /usr/lib/libQt5Core.so.5
#25 0x0000000000404c15 in main (argc=<optimized out>, argv=<optimized out>) at /home/raghu/kf5/src/krita/krita/main.cc:231
Comment 5 Halla Rempt 2016-09-08 11:46:32 UTC
I had the same thing again today, when I created and closed a document too quickly.
Comment 6 Patrice Kouame 2016-09-10 20:02:49 UTC
Krita 3.0.1 master
macOS Sierra
Xcode 8 
RelWithDebInfo

closing the last document window effectively "shuts down" the application. Whether I saved my document or not. Usually get a "dtor!!!" message without a crash notification. Speed doesn't seem to be a factor for me.
Comment 7 Dmitry Kazakov 2016-09-21 14:53:53 UTC
Git commit 62ad2e3ec438e710eb49f8fe0f7cbc9958e5b698 by Dmitry Kazakov.
Committed on 21/09/2016 at 14:52.
Pushed by dkazakov into branch 'kazakov/preset-chooser-fixes'.

Fix memory leak when Cumulative Undo is turned on

By default all the KUndo2Command objects should be *not* mergable

Ref T3681

M  +3    -2    libs/kundo2/kundo2stack.cpp
M  +1    -0    libs/ui/KisDocument.cpp

http://commits.kde.org/krita/62ad2e3ec438e710eb49f8fe0f7cbc9958e5b698
Comment 8 Dmitry Kazakov 2016-09-21 14:53:53 UTC
Git commit 0571f3df18ea27362cff38bbae20560da87475c7 by Dmitry Kazakov.
Committed on 21/09/2016 at 14:53.
Pushed by dkazakov into branch 'kazakov/preset-chooser-fixes'.

Convert the memory leak assert into a safe assert

So people would not get a dataloss accidentally :(
Fixes T3681

M  +1    -1    libs/ui/KisDocument.cpp

http://commits.kde.org/krita/0571f3df18ea27362cff38bbae20560da87475c7
Comment 9 Patrice Kouame 2016-09-26 15:56:19 UTC
Didn't find these patches merged into master, so tested them locally.
Krita no longer crashes on close anymore. Good
Krita does shut down when last document closed. Is that expected behavior?

=============================
krita master 3.0.2 beta git (b9c7f56)
ext_qt qt5.7 rebuilt and patched
xcode 8
macOS Sierra
macPro 3,1
Comment 10 Halla Rempt 2016-09-26 20:26:56 UTC
Git commit 96b2cedd5f8ce4a846d00e67f519d56c4539ea31 by Boudewijn Rempt, on behalf of Dmitry Kazakov.
Committed on 26/09/2016 at 20:06.
Pushed by rempt into branch 'krita/3.0.1'.

Convert the memory leak assert into a safe assert

So people would not get a dataloss accidentally :(
Fixes T3681

M  +1    -1    libs/ui/KisDocument.cpp

http://commits.kde.org/krita/96b2cedd5f8ce4a846d00e67f519d56c4539ea31
Comment 11 Halla Rempt 2016-09-26 20:27:07 UTC
Git commit 01fe12f632db1482a4091ac2586231ae8ca5a40e by Boudewijn Rempt, on behalf of Dmitry Kazakov.
Committed on 26/09/2016 at 20:06.
Pushed by rempt into branch 'krita/3.0.1'.

Fix memory leak when Cumulative Undo is turned on

By default all the KUndo2Command objects should be *not* mergable

Ref T3681

M  +3    -2    libs/kundo2/kundo2stack.cpp
M  +1    -0    libs/ui/KisDocument.cpp

http://commits.kde.org/krita/01fe12f632db1482a4091ac2586231ae8ca5a40e