Bug 206738 - KMail crash with assert (KMail::MessageListView::StorageModel::slotMessageAdded, ..., KMFolder::msgAdded)
Summary: KMail crash with assert (KMail::MessageListView::StorageModel::slotMessageAdd...
Status: RESOLVED FIXED
Alias: None
Product: kmail
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Unlisted Binaries Linux
: NOR crash
Target Milestone: ---
Assignee: kdepim bugs
URL:
Keywords:
: 184691 189924 191075 209037 (view as bug list)
Depends on:
Blocks:
 
Reported: 2009-09-08 13:53 UTC by Marcin Gryszkalis
Modified: 2009-12-17 15:26 UTC (History)
6 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 Marcin Gryszkalis 2009-09-08 13:53:08 UTC
Application that crashed: kmail
Version of the application: 1.12.1
KDE Version: 4.3.1 (KDE 4.3.1)
Qt Version: 4.5.2
Operating System: Linux 2.6.30-gentoo-r4-ines i686

 -- Backtrace:
Application: KMail (kmail), signal: Aborted
[KCrash Handler]
#6  0xffffe424 in __kernel_vsyscall ()
#7  0xb5824980 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#8  0xb58261c8 in abort () at abort.c:88
#9  0xb642a0d6 in qt_message_output (msgType=QtFatalMsg, 
    buf=0xb47f7f8 "ASSERT: \"idx != -1\" in file /tmp/portage/kde-base/kmail-4.3.1/work/kmail-4.3.1/kmail/messagelistview/storagemodel.cpp, line 650") at global/qglobal.cpp:2042
#10 0xb642a18b in qFatal (msg=0xb6562f68 "ASSERT: \"%s\" in file %s, line %d") at global/qglobal.cpp:2241
#11 0xb642a4f7 in qt_assert (assertion=0xb78fccb2 "idx != -1", file=0xb79733e8 "/tmp/portage/kde-base/kmail-4.3.1/work/kmail-4.3.1/kmail/messagelistview/storagemodel.cpp", line=650)
    at global/qglobal.cpp:1811
#12 0xb783e523 in KMail::MessageListView::StorageModel::slotMessageAdded (this=0xd721538, folder=0xbb461f8, sernum=0)
    at /usr/src/debug/kde-base/kmail-4.3.1/kmail-4.3.1/kmail/messagelistview/storagemodel.cpp:650
#13 0xb74e9841 in KMail::MessageListView::StorageModel::qt_metacall (this=0xd721538, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0xbf8e4b38)
    at /usr/src/debug/kde-base/kmail-4.3.1/kmail-4.3.1_build/kmail/moc_storagemodel.cpp:84
#14 0xb652b4c5 in QMetaObject::activate (sender=0xbb461f8, from_signal_index=<value optimized out>, to_signal_index=16, argv=0x0) at kernel/qobject.cpp:3101
#15 0xb652cf9d in QMetaObject::activate (sender=0xbb461f8, m=0xb7a6cc00, local_signal_index=12, argv=0xbf8e4b38) at kernel/qobject.cpp:3178
#16 0xb75aa22e in KMFolder::msgAdded (this=0xbb461f8, _t1=0xbb461f8, _t2=0) at /usr/src/debug/kde-base/kmail-4.3.1/kmail-4.3.1_build/kmail/kmfolder.moc:228
#17 0xb75aa912 in KMFolder::qt_metacall (this=0xbb461f8, _c=QMetaObject::InvokeMetaMethod, _id=12, _a=0xbf8e4c38) at /usr/src/debug/kde-base/kmail-4.3.1/kmail-4.3.1_build/kmail/kmfolder.moc:123
#18 0xb652b4c5 in QMetaObject::activate (sender=0xc017be8, from_signal_index=<value optimized out>, to_signal_index=19, argv=0x0) at kernel/qobject.cpp:3101
#19 0xb652cf9d in QMetaObject::activate (sender=0xc017be8, m=0xb7a6d1e8, local_signal_index=15, argv=0xbf8e4c38) at kernel/qobject.cpp:3178
#20 0xb75ccc3e in FolderStorage::msgAdded (this=0xc017be8, _t1=0xbb461f8, _t2=0) at /usr/src/debug/kde-base/kmail-4.3.1/kmail-4.3.1_build/kmail/folderstorage.moc:260
#21 0xb75ce8d8 in FolderStorage::emitMsgAddedSignals (this=0xc017be8, idx=0) at /usr/src/debug/kde-base/kmail-4.3.1/kmail-4.3.1/kmail/folderstorage.cpp:298
#22 0xb7753a1f in KMFolderSearch::addSerNum (this=0xc017be8, serNum=283068106) at /usr/src/debug/kde-base/kmail-4.3.1/kmail-4.3.1/kmail/kmfoldersearch.cpp:485
#23 0xb77577a7 in KMFolderSearch::qt_metacall (this=0xc017be8, _c=QMetaObject::InvokeMetaMethod, _id=9, _a=0xbf8e4dec)
    at /usr/src/debug/kde-base/kmail-4.3.1/kmail-4.3.1_build/kmail/kmfoldersearch.moc:182
#24 0xb652b4c5 in QMetaObject::activate (sender=0x1014f938, from_signal_index=<value optimized out>, to_signal_index=4, argv=0x0) at kernel/qobject.cpp:3101
#25 0xb652cf9d in QMetaObject::activate (sender=0x1014f938, m=0xb7a7424c, local_signal_index=0, argv=0xbf8e4dec) at kernel/qobject.cpp:3178
#26 0xb77522d8 in KMSearch::found (this=0x1014f938, _t1=283068106) at /usr/src/debug/kde-base/kmail-4.3.1/kmail-4.3.1_build/kmail/kmfoldersearch.moc:92
#27 0xb7755356 in KMSearch::slotSearchFolderResult (this=0x1014f938, folder=0x8525b40, serNums=
        {{p = {static shared_null = {ref = {_q_value = 69175}, alloc = 0, begin = 0, end = 0, sharable = 1, array = {0x0}}, d = 0xbf8e4eb8}, d = 0xbf8e4eb8}}, pattern=0x9a3e780, complete=false)
    at /usr/src/debug/kde-base/kmail-4.3.1/kmail-4.3.1/kmail/kmfoldersearch.cpp:294
#28 0xb7755732 in KMSearch::qt_metacall (this=0x1014f938, _c=QMetaObject::InvokeMetaMethod, _id=4, _a=0xbf8e4f90) at /usr/src/debug/kde-base/kmail-4.3.1/kmail-4.3.1_build/kmail/kmfoldersearch.moc:80
#29 0xb652b4c5 in QMetaObject::activate (sender=0x851dbb0, from_signal_index=<value optimized out>, to_signal_index=25, argv=0x0) at kernel/qobject.cpp:3101
#30 0xb652cf9d in QMetaObject::activate (sender=0x851dbb0, m=0xb7a6d1e8, local_signal_index=21, argv=0xbf8e4f90) at kernel/qobject.cpp:3178
#31 0xb75cc9fe in FolderStorage::searchResult (this=0x851dbb0, _t1=0x8525b40, _t2=
        {{p = {static shared_null = {ref = {_q_value = 69175}, alloc = 0, begin = 0, end = 0, sharable = 1, array = {0x0}}, d = 0xbf8e4fe8}, d = 0xbf8e4fe8}}, _t3=0x9a3e780, _t4=false)
    at /usr/src/debug/kde-base/kmail-4.3.1/kmail-4.3.1_build/kmail/folderstorage.moc:302
#32 0xb75cd5dd in FolderStorage::slotProcessNextSearchBatch (this=0x851dbb0) at /usr/src/debug/kde-base/kmail-4.3.1/kmail-4.3.1/kmail/folderstorage.cpp:1185
#33 0xb75cd6ae in FolderStorage::qt_metacall (this=0x851dbb0, _c=QMetaObject::InvokeMetaMethod, _id=29, _a=0xbf8e5128)
    at /usr/src/debug/kde-base/kmail-4.3.1/kmail-4.3.1_build/kmail/folderstorage.moc:148
#34 0xb7751815 in KMFolderIndex::qt_metacall (this=0x851dbb0, _c=QMetaObject::InvokeMetaMethod, _id=33, _a=0xbf8e5128)
    at /usr/src/debug/kde-base/kmail-4.3.1/kmail-4.3.1_build/kmail/kmfolderindex.moc:63
#35 0xb7679d6b in KMFolderMaildir::qt_metacall (this=0x851dbb0, _c=QMetaObject::InvokeMetaMethod, _id=33, _a=0xbf8e5128)
    at /usr/src/debug/kde-base/kmail-4.3.1/kmail-4.3.1_build/kmail/kmfoldermaildir.moc:61
#36 0xb652b4c5 in QMetaObject::activate (sender=0xb470e40, from_signal_index=<value optimized out>, to_signal_index=4, argv=0x0) at kernel/qobject.cpp:3101
#37 0xb652cf9d in QMetaObject::activate (sender=0xb470e40, m=0xb65c4924, local_signal_index=0, argv=0x0) at kernel/qobject.cpp:3178
#38 0xb6530f28 in QSingleShotTimer::timeout (this=0xb470e40) at .moc/debug-shared/qtimer.moc:76
#39 0xb6531021 in QSingleShotTimer::timerEvent (this=0xb470e40) at kernel/qtimer.cpp:298
#40 0xb65264d8 in QObject::event (this=0xb470e40, e=0xbf8e55cc) at kernel/qobject.cpp:1066
#41 0xb5b7f9fb in QApplicationPrivate::notify_helper (this=0x8244668, receiver=0xb470e40, e=0xbf8e55cc) at kernel/qapplication.cpp:4056
#42 0xb5b87daf in QApplication::notify (this=0xbf8e58d8, receiver=0xb470e40, e=0xbf8e55cc) at kernel/qapplication.cpp:3603
#43 0xb7e1d180 in KApplication::notify (this=0xbf8e58d8, receiver=0xb470e40, event=0xbf8e55cc) at /usr/src/debug/kde-base/kdelibs-4.3.1/kdelibs-4.3.1/kdeui/kernel/kapplication.cpp:302
#44 0xb65167fd in QCoreApplication::notifyInternal (this=0xbf8e58d8, receiver=0xb470e40, event=0xbf8e55cc) at kernel/qcoreapplication.cpp:606
#45 0xb6541704 in QTimerInfoList::activateTimers (this=0x8246fa4) at kernel/qcoreapplication.h:213
#46 0xb653ea27 in timerSourceDispatch (source=0x8246f70) at kernel/qeventdispatcher_glib.cpp:165
#47 0xb483242e in IA__g_main_context_dispatch (context=0x8245f10) at gmain.c:1824
#48 0xb4835721 in g_main_context_iterate (context=0x8245f10, block=1, dispatch=1, self=0x8234848) at gmain.c:2455
#49 0xb4835892 in IA__g_main_context_iteration (context=0x8245f10, may_block=1) at gmain.c:2518
#50 0xb653e997 in QEventDispatcherGlib::processEvents (this=0x820d8c0, flags={i = -1081190584}) at kernel/qeventdispatcher_glib.cpp:327
#51 0xb5c0f71e in QGuiEventDispatcherGlib::processEvents (this=0x820d8c0, flags={i = -1081190536}) at kernel/qguieventdispatcher_glib.cpp:202
#52 0xb651541f in QEventLoop::processEvents (this=0xbf8e57e0, flags={i = -1081190472}) at kernel/qeventloop.cpp:149
#53 0xb65155eb in QEventLoop::exec (this=0xbf8e57e0, flags={i = -1081190424}) at kernel/qeventloop.cpp:197
#54 0xb651a02b in QCoreApplication::exec () at kernel/qcoreapplication.cpp:888
#55 0xb5b7f79c in QApplication::exec () at kernel/qapplication.cpp:3525
#56 0x0804aba8 in main (argc=) at /usr/src/debug/kde-base/kmail-4.3.1/kmail-4.3.1/kmail/main.cpp:146

Reported using DrKonqi
Comment 1 Dario Andres 2009-09-08 14:46:35 UTC
*** Bug 191075 has been marked as a duplicate of this bug. ***
Comment 2 Dario Andres 2009-09-08 14:46:49 UTC
*** Bug 189924 has been marked as a duplicate of this bug. ***
Comment 3 Dario Andres 2009-09-08 14:48:00 UTC
Both duplicates have some kind of explanation.
This could also be related/the same as bug 184615.
Thanks
Comment 4 Dario Andres 2009-10-10 18:48:58 UTC
*** Bug 209037 has been marked as a duplicate of this bug. ***
Comment 5 Christophe Marin 2009-10-30 10:59:25 UTC
*** Bug 184691 has been marked as a duplicate of this bug. ***
Comment 6 David Faure 2009-12-16 17:21:21 UTC
I can reproduce this bug using the following steps:

1) do a search on a mail folder (mine had subfolders, dunno if that matters)
2) close the search dialog
3) click on the "Last Search" folder at the bottom of the folder list
4) do the exact same search again, on the same folder as in step 1

Crash. Looks like it doesn't like the fact that the current folder is "Last Search", which has to be re-populated I guess.
Comment 7 Allen Winter 2009-12-17 15:23:32 UTC
SVN commit 1063234 by winterz:

in emitMsgAddSignals(), don't emit msgAdded if the serial number
for the specified index is 0.

BUG: 206738
MERGE: 4.3


 M  +9 -6      folderstorage.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1063234
Comment 8 Allen Winter 2009-12-17 15:26:00 UTC
SVN commit 1063235 by winterz:

Backport r1063234 by winterz from trunk to the 4.3 branch:

in emitMsgAddSignals(), don't emit msgAdded if the serial number
for the specified index is 0.

CCBUG: 206738
MERGE: 4.3



 M  +9 -6      folderstorage.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1063235