Summary: | Crash after changing folders | ||
---|---|---|---|
Product: | [Applications] kmail2 | Reporter: | Thomas McGuire <mcguire> |
Component: | message list | Assignee: | Stephen Kelly <steveire> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | asouza, kdepim-bugs, lfranchi, steveire |
Priority: | NOR | Keywords: | akonadi-ports-regression |
Version: | 1.99.0 | ||
Target Milestone: | --- | ||
Platform: | Unlisted Binaries | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Bug Depends on: | |||
Bug Blocks: | 223438 |
Description
Thomas McGuire
2010-04-05 19:12:24 UTC
This is a crash in a model, so adding Steve to the CC list. *** Bug 233874 has been marked as a duplicate of this bug. *** I get a different backtrace now, both below: Thread 1 (Thread 0x7f9396bec760 (LWP 8781)): [KCrash Handler] #6 0x00007f938fa58465 in raise () from /lib/libc.so.6 #7 0x00007f938fa598e6 in abort () from /lib/libc.so.6 #8 0x00007f93907d1d55 in qt_message_output (msgType=QtFatalMsg, buf=0x4b8fb68 "ASSERT: \"mModelForItemFunctions\" in file /home/leo/kde/kdepim/messagelist/core/model.cpp, line 2916") at global/qglobal.cpp:2248 #9 0x00007f93907d1f34 in qt_message (msgType=QtFatalMsg, msg=0x7f9390993f78 "ASSERT: \"%s\" in file %s, line %d", ap=0x7fffe1dad380) at global/qglobal.cpp:2294 #10 0x00007f93907d27a1 in qFatal (msg=0x7f9390993f78 "ASSERT: \"%s\" in file %s, line %d") at global/qglobal.cpp:2477 #11 0x00007f93907d18e7 in qt_assert (assertion=0x7f938ca72207 "mModelForItemFunctions", file=0x7f938ca71fd8 "/home/leo/kde/kdepim/messagelist/core/model.cpp", line=2916) at global/qglobal.cpp:2011 #12 0x00007f938ca0e992 in MessageList::Core::ModelPrivate::viewItemJobStepInternalForJobPass1Cleanup (this=0x2552850, job=0x491a240, tStart=...) at /home/leo/kde/kdepim/messagelist/core/model.cpp:2916 #13 0x00007f938ca0fe9a in MessageList::Core::ModelPrivate::viewItemJobStepInternalForJob (this=0x2552850, job=0x491a240, tStart=...) at /home/leo/kde/kdepim/messagelist/core/model.cpp:3362 #14 0x00007f938ca10772 in MessageList::Core::ModelPrivate::viewItemJobStepInternal (this=0x2552850) at /home/leo/kde/kdepim/messagelist/core/model.cpp:3718 #15 0x00007f938ca1117b in MessageList::Core::ModelPrivate::viewItemJobStep (this=0x2552850) at /home/leo/kde/kdepim/messagelist/core/model.cpp:3933 #16 0x00007f938ca13224 in MessageList::Core::Model::qt_metacall (this=0x254bba0, _c=QMetaObject::InvokeMetaMethod, _id=2, _a=0x7fffe1dadbc0) at /home/leo/kde/kdepim-build/messagelist/model.moc:90 #17 0x00007f9390911465 in QMetaObject::metacall (object=0x254bba0, cl=QMetaObject::InvokeMetaMethod, idx=26, argv=0x7fffe1dadbc0) at kernel/qmetaobject.cpp:237 #18 0x00007f93909278e0 in QMetaObject::activate (sender=0x2552888, m=0x7f9390c86e20, local_signal_index=0, argv=0x0) at kernel/qobject.cpp:3287 #19 0x00007f9390990645 in QTimer::timeout (this=0x2552888) at .moc/debug-shared/moc_qtimer.cpp:134 #20 0x00007f9390931017 in QTimer::timerEvent (this=0x2552888, e=0x7fffe1dae5d0) at kernel/qtimer.cpp:271 #21 0x00007f939092308b in QObject::event (this=0x2552888, e=0x7fffe1dae5d0) at kernel/qobject.cpp:1204 #22 0x00007f9391cc20ec in QApplicationPrivate::notify_helper (this=0x1d8f610, receiver=0x2552888, e=0x7fffe1dae5d0) at kernel/qapplication.cpp:4300 #23 0x00007f9391cbf58a in QApplication::notify (this=0x7fffe1daeaa0, receiver=0x2552888, e=0x7fffe1dae5d0) at kernel/qapplication.cpp:3704 #24 0x00007f93965921db in KApplication::notify (this=0x7fffe1daeaa0, receiver=0x2552888, event=0x7fffe1dae5d0) at /home/leo/kde/kdelibs/kdeui/kernel/kapplication.cpp:302 #25 0x00007f939090941c in QCoreApplication::notifyInternal (this=0x7fffe1daeaa0, receiver=0x2552888, event=0x7fffe1dae5d0) at kernel/qcoreapplication.cpp:704 #26 0x00007f9391cb10f7 in QCoreApplication::sendEvent (receiver=0x2552888, event=0x7fffe1dae5d0) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215 #27 0x00007f9390949b2f in QTimerInfoList::activateTimers (this=0x1d92f30) at kernel/qeventdispatcher_unix.cpp:603 #28 0x00007f9390944e5f in timerSourceDispatch (source=0x1d92ed0) at kernel/qeventdispatcher_glib.cpp:184 #29 0x00007f9386134b33 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0 #30 0x00007f9386135310 in g_main_context_iterate () from /usr/lib/libglib-2.0.so.0 #31 0x00007f93861355ad in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0 #32 0x00007f93909462f7 in QEventDispatcherGlib::processEvents (this=0x1d20b60, flags=...) at kernel/qeventdispatcher_glib.cpp:412 #33 0x00007f9391da961c in QGuiEventDispatcherGlib::processEvents (this=0x1d20b60, flags=...) at kernel/qguieventdispatcher_glib.cpp:204 #34 0x00007f9390906414 in QEventLoop::processEvents (this=0x7fffe1dae930, flags=...) at kernel/qeventloop.cpp:149 #35 0x00007f939090656a in QEventLoop::exec (this=0x7fffe1dae930, flags=...) at kernel/qeventloop.cpp:201 #36 0x00007f9390909b1e in QCoreApplication::exec () at kernel/qcoreapplication.cpp:981 #37 0x00007f9391cbf0fc in QApplication::exec () at kernel/qapplication.cpp:3579 #38 0x000000000040366e in main (argc=1, argv=0x7fffe1daec38) at /home/leo/kde/kdepim/kmail/main.cpp:147 Thread 1 (Thread 0x7f48fb9f1760 (LWP 6413)): [KCrash Handler] #6 0x00007f48f485d465 in raise () from /lib/libc.so.6 #7 0x00007f48f485e8e6 in abort () from /lib/libc.so.6 #8 0x00007f48f55d6d55 in qt_message_output (msgType=QtFatalMsg, buf=0x2b545f8 "ASSERT: \"mOrphanChildrenHash.contains( dyingMessage )\" in file /home/leo/kde/kdepim/messagelist/core/model.cpp, line 3015") at global/qglobal.cpp:2248 #9 0x00007f48f55d6f34 in qt_message (msgType=QtFatalMsg, msg=0x7f48f5798f78 "ASSERT: \"%s\" in file %s, line %d", ap=0x7fff79a3c970) at global/qglobal.cpp:2294 #10 0x00007f48f55d77a1 in qFatal (msg=0x7f48f5798f78 "ASSERT: \"%s\" in file %s, line %d") at global/qglobal.cpp:2477 #11 0x00007f48f55d68e7 in qt_assert (assertion=0x7f48f1878348 "mOrphanChildrenHash.contains( dyingMessage )", file=0x7f48f1876fd8 "/home/leo/kde/kdepim/messagelist/core/model.cpp", line=3015) at global/qglobal.cpp:2011 #12 0x00007f48f1813e8d in MessageList::Core::ModelPrivate::viewItemJobStepInternalForJobPass1Cleanup (this=0xdbbc30, job=0x355ee80, tStart=...) at /home/leo/kde/kdepim/messagelist/core/model.cpp:3015 #13 0x00007f48f1814e9a in MessageList::Core::ModelPrivate::viewItemJobStepInternalForJob (this=0xdbbc30, job=0x355ee80, tStart=...) at /home/leo/kde/kdepim/messagelist/core/model.cpp:3362 #14 0x00007f48f1815772 in MessageList::Core::ModelPrivate::viewItemJobStepInternal (this=0xdbbc30) at /home/leo/kde/kdepim/messagelist/core/model.cpp:3718 #15 0x00007f48f181617b in MessageList::Core::ModelPrivate::viewItemJobStep (this=0xdbbc30) at /home/leo/kde/kdepim/messagelist/core/model.cpp:3933 #16 0x00007f48f1818224 in MessageList::Core::Model::qt_metacall (this=0xe3b5b0, _c=QMetaObject::InvokeMetaMethod, _id=2, _a=0x7fff79a3d1b0) at /home/leo/kde/kdepim-build/messagelist/model.moc:90 #17 0x00007f48f5716465 in QMetaObject::metacall (object=0xe3b5b0, cl=QMetaObject::InvokeMetaMethod, idx=26, argv=0x7fff79a3d1b0) at kernel/qmetaobject.cpp:237 #18 0x00007f48f572c8e0 in QMetaObject::activate (sender=0xdbbc68, m=0x7f48f5a8be20, local_signal_index=0, argv=0x0) at kernel/qobject.cpp:3287 #19 0x00007f48f5795645 in QTimer::timeout (this=0xdbbc68) at .moc/debug-shared/moc_qtimer.cpp:134 #20 0x00007f48f5736017 in QTimer::timerEvent (this=0xdbbc68, e=0x7fff79a3dbc0) at kernel/qtimer.cpp:271 #21 0x00007f48f572808b in QObject::event (this=0xdbbc68, e=0x7fff79a3dbc0) at kernel/qobject.cpp:1204 #22 0x00007f48f6ac70ec in QApplicationPrivate::notify_helper (this=0x99a610, receiver=0xdbbc68, e=0x7fff79a3dbc0) at kernel/qapplication.cpp:4300 #23 0x00007f48f6ac458a in QApplication::notify (this=0x7fff79a3e090, receiver=0xdbbc68, e=0x7fff79a3dbc0) at kernel/qapplication.cpp:3704 #24 0x00007f48fb3971db in KApplication::notify (this=0x7fff79a3e090, receiver=0xdbbc68, event=0x7fff79a3dbc0) at /home/leo/kde/kdelibs/kdeui/kernel/kapplication.cpp:302 #25 0x00007f48f570e41c in QCoreApplication::notifyInternal (this=0x7fff79a3e090, receiver=0xdbbc68, event=0x7fff79a3dbc0) at kernel/qcoreapplication.cpp:704 #26 0x00007f48f6ab60f7 in QCoreApplication::sendEvent (receiver=0xdbbc68, event=0x7fff79a3dbc0) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215 #27 0x00007f48f574eb2f in QTimerInfoList::activateTimers (this=0x99df30) at kernel/qeventdispatcher_unix.cpp:603 #28 0x00007f48f5749e5f in timerSourceDispatch (source=0x99ded0) at kernel/qeventdispatcher_glib.cpp:184 #29 0x00007f48eaf39b33 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0 #30 0x00007f48eaf3a310 in g_main_context_iterate () from /usr/lib/libglib-2.0.so.0 #31 0x00007f48eaf3a5ad in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0 #32 0x00007f48f574b2f7 in QEventDispatcherGlib::processEvents (this=0x92bb60, flags=...) at kernel/qeventdispatcher_glib.cpp:412 #33 0x00007f48f6bae61c in QGuiEventDispatcherGlib::processEvents (this=0x92bb60, flags=...) at kernel/qguieventdispatcher_glib.cpp:204 #34 0x00007f48f570b414 in QEventLoop::processEvents (this=0x7fff79a3df20, flags=...) at kernel/qeventloop.cpp:149 #35 0x00007f48f570b56a in QEventLoop::exec (this=0x7fff79a3df20, flags=...) at kernel/qeventloop.cpp:201 #36 0x00007f48f570eb1e in QCoreApplication::exec () at kernel/qcoreapplication.cpp:981 #37 0x00007f48f6ac40fc in QApplication::exec () at kernel/qapplication.cpp:3579 #38 0x000000000040366e in main (argc=1, argv=0x7fff79a3e228) at /home/leo/kde/kdepim/kmail/main.cpp:147 Seems to be unrelated to folder shortcuts, see duplicate bug. *** Bug 237633 has been marked as a duplicate of this bug. *** This happens when the cleanup job (viewItemJobStepInternalForJobPass1Cleanup) is called very early in the view fill process---before parent messages have their children set up. The individual threaded items therefore (a) have no parent and (b) are not in the orphan list (as when the previous pass checked the parent for children to put in the orphan list, there were none there). then it crashes.... i'm not sure exactly where it is being interrupted yet. removing the assert pushes the crash along to viewItemJobStepInternalForPass2, to a corrupted messageitem in the list for pass2 processing. this is one of the backtraces I get when I remove the assert: Thread 1 (Thread 0x7fb3f7821760 (LWP 16995)): [KCrash Handler] #6 0x00007fb3ed7d9b88 in MessageList::Core::MessageItem::threadingStatus (this=0x3970390) at /home/leo/kde/src/kdepim/messagelist/core/messageitem.cpp:506 #7 0x00007fb3ed7e5110 in MessageList::Core::ModelPrivate::viewItemJobStepInternalForJobPass2 (this=0x1472880, job=0x38f3730, tStart=...) at /home/leo/kde/src/kdepim/messagelist/core/model.cpp:2578 #8 0x00007fb3ed7e82a6 in MessageList::Core::ModelPrivate::viewItemJobStepInternalForJob (this=0x1472880, job=0x38f3730, tStart=...) at /home/leo/kde/src/kdepim/messagelist/core/model.cpp:3459 #9 0x00007fb3ed7e888c in MessageList::Core::ModelPrivate::viewItemJobStepInternal (this=0x1472880) at /home/leo/kde/src/kdepim/messagelist/core/model.cpp:3749 #10 0x00007fb3ed7e9295 in MessageList::Core::ModelPrivate::viewItemJobStep (this=0x1472880) at /home/leo/kde/src/kdepim/messagelist/core/model.cpp:3964 #11 0x00007fb3ed7eb742 in MessageList::Core::Model::qt_metacall (this=0x14bd450, _c=QMetaObject::InvokeMetaMethod, _id=2, _a=0x7fff9482bc80) at /home/leo/kde/build/kdepim/messagelist/model.moc:90 #12 0x00007fb3f172b923 in QMetaObject::metacall (object=0x14bd450, cl=QMetaObject::InvokeMetaMethod, idx=26, argv=0x7fff9482bc80) at kernel/qmetaobject.cpp:237 #13 0x00007fb3f173e98c in QMetaObject::activate (sender=0x14728b8, m=0x7fb3f1a89100, local_signal_index=0, argv=0x0) at kernel/qobject.cpp:3269 #14 0x00007fb3f1795d09 in QTimer::timeout (this=0x14728b8) at .moc/debug-shared/moc_qtimer.cpp:134 #15 0x00007fb3f1746f0d in QTimer::timerEvent (this=0x14728b8, e=0x7fff9482c680) at kernel/qtimer.cpp:271 #16 0x00007fb3f173a761 in QObject::event (this=0x14728b8, e=0x7fff9482c680) at kernel/qobject.cpp:1175 #17 0x00007fb3f2a75326 in QApplicationPrivate::notify_helper (this=0x2224620, receiver=0x14728b8, e=0x7fff9482c680) at kernel/qapplication.cpp:4389 #18 0x00007fb3f2a72a51 in QApplication::notify (this=0x7fff9482cb20, receiver=0x14728b8, e=0x7fff9482c680) at kernel/qapplication.cpp:3791 #19 0x00007fb3f71b74a7 in KApplication::notify (this=0x7fff9482cb20, receiver=0x14728b8, event=0x7fff9482c680) at /home/leo/kde/src/kdelibs/kdeui/kernel/kapplication.cpp:302 #20 0x00007fb3f172440b in QCoreApplication::notifyInternal (this=0x7fff9482cb20, receiver=0x14728b8, event=0x7fff9482c680) at kernel/qcoreapplication.cpp:732 #21 0x00007fb3f2a675bb in QCoreApplication::sendEvent (receiver=0x14728b8, event=0x7fff9482c680) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215 #22 0x00007fb3f175b31d in QTimerInfoList::activateTimers (this=0x2227f60) at kernel/qeventdispatcher_unix.cpp:602 #23 0x00007fb3f1757960 in timerSourceDispatch (source=0x2227f00) at kernel/qeventdispatcher_glib.cpp:184 #24 0x00007fb3e6e60b33 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0 #25 0x00007fb3e6e61310 in g_main_context_iterate () from /usr/lib/libglib-2.0.so.0 #26 0x00007fb3e6e615ad in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0 #27 0x00007fb3f1758321 in QEventDispatcherGlib::processEvents (this=0x124f690, flags=...) at kernel/qeventdispatcher_glib.cpp:412 #28 0x00007fb3f2b3b234 in QGuiEventDispatcherGlib::processEvents (this=0x124f690, flags=...) at kernel/qguieventdispatcher_glib.cpp:204 #29 0x00007fb3f172239a in QEventLoop::processEvents (this=0x7fff9482c9c0, flags=...) at kernel/qeventloop.cpp:149 #30 0x00007fb3f17224ee in QEventLoop::exec (this=0x7fff9482c9c0, flags=...) at kernel/qeventloop.cpp:197 #31 0x00007fb3f1724aca in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1009 #32 0x00007fb3f2a725c6 in QApplication::exec () at kernel/qapplication.cpp:3665 #33 0x00000000004034c4 in main (argc=1, argv=0x7fff9482ccb8) at /home/leo/kde/src/kdepim/kmail/main.cpp:145 SVN commit 1142448 by stefanek: When a rowsRemoved() signal is received in the middle of a fill job, and the removed rows cover the job entirely don't delete the job but make it skip directly to pass 2. Fixes some crashes related to dangling pointers left in this particular case. BUG: 233397 M +20 -4 model.cpp WebSVN link: http://websvn.kde.org/?view=rev&revision=1142448 |