Bug 187334 - Crash when deleting IMAP account emails
Summary: Crash when deleting IMAP account emails
Status: RESOLVED FIXED
Alias: None
Product: kmail
Classification: Unmaintained
Component: general (show other bugs)
Version: unspecified
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: kdepim bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-03-16 21:44 UTC by lori
Modified: 2009-05-29 01:49 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description lori 2009-03-16 21:44:34 UTC
Version:            (using KDE 4.1.4)
OS:                Linux
Installed from:    Ubuntu Packages

I have two IMAP email accounts in Kontact. When I delete a bunch at a time by hitting delete key on each one, the entire program will often crash. The reporter says there is no data to send you for review. If I hit the delete key more slowly, I seem to be able to stop it from crashing.

Also, when reviewing other bug reports prior to filing this one I saw quite a few crashes of Kontact when it loads on startup or it keeps asking for your email passwords over and over. I had this problem too. It was the wallet. It wasn't loading properly before Kontact needed it and Kontact would just crash or keep asking for passwords.  I fixed my wallet and Kontact is fine. Hope that helps.
Comment 1 Dario Andres 2009-03-17 15:40:40 UTC
If you can reproduce the crash at will, may you read http://techbase.kde.org/Development/Tutorials/Debugging/How_to_create_useful_crash_reports and post a complete backtrace here?
Also, you need to install the "kdepim-dbg" package
The other issues are reported and being worked on :)
Thanks :)
Comment 2 Richard Salts 2009-05-05 02:05:02 UTC
I'm getting a crash when deleting many emails in an imap account as the original reporter is, however it is when I select many of them and hit shift-delete when they're all selected, rather than hitting delete rapidly.

Backtrace is as follows:
Application: Kontact (kontact), signal SIGSEGV
[Current thread is 0 (LWP 21796)]

Thread 2 (Thread 0xac64cb90 (LWP 23498)):
#0  0xb7ff5424 in __kernel_vsyscall ()
#1  0xb6b1b6a1 in select () from /lib/i686/cmov/libc.so.6
#2  0xb77ab920 in QProcessManager::run (this=0x85fe4a8) at io/qprocess_unix.cpp:305
#3  0xb76da80e in QThreadPrivate::start (arg=0x85fe4a8) at thread/qthread_unix.cpp:189
#4  0xb52034e5 in start_thread () from /lib/i686/cmov/libpthread.so.0
#5  0xb6b231fe in clone () from /lib/i686/cmov/libc.so.6

Thread 1 (Thread 0xb48a2930 (LWP 21796)):
[KCrash Handler]
#6  0xb6ab8ef3 in memmove () from /lib/i686/cmov/libc.so.6
#7  0xb76ff893 in QListData::remove (this=0xb423048, i=7) at tools/qlistdata.cpp:218
#8  0xb76ff8ea in QListData::erase (this=0xb423048, xi=0xb7ccc20) at tools/qlistdata.cpp:283
#9  0xb156ec9e in QList<KMail::MessageListView::Core::MessageItem*>::erase (this=0xb423048, it={i = 0xbf91040c}) at /usr/include/qt4/QtCore/qlist.h:384
#10 0xb15617f7 in KMail::MessageListView::Core::Model::removeMessageFromSubjectBasedThreadingCache (this=0x9a689a8, mi=0xa5cc2f8) at ../../kmail/messagelistview/core/model.cpp:1645
#11 0xb15685f9 in KMail::MessageListView::Core::Model::viewItemJobStepInternalForJobPass1Cleanup (this=0x9a689a8, job=0xb618f60, tStart=@0xbf9106bc) at ../../kmail/messagelistview/core/model.cpp:3046
#12 0xb156ab16 in KMail::MessageListView::Core::Model::viewItemJobStepInternalForJob (this=0x9a689a8, job=0xb618f60, tStart=@0xbf9106bc) at ../../kmail/messagelistview/core/model.cpp:3376
#13 0xb156b03f in KMail::MessageListView::Core::Model::viewItemJobStepInternal (this=0x9a689a8) at ../../kmail/messagelistview/core/model.cpp:3578
#14 0xb156c149 in KMail::MessageListView::Core::Model::viewItemJobStep (this=0x9a689a8) at ../../kmail/messagelistview/core/model.cpp:3737
#15 0xb10f1453 in KMail::MessageListView::Core::Model::qt_metacall (this=0x9a689a8, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0xbf910888) at moc_model.cpp:75
#16 0xb77e3b98 in QMetaObject::activate (sender=0x9a67748, from_signal_index=4, to_signal_index=4, argv=0x0) at kernel/qobject.cpp:3120
#17 0xb77e4822 in QMetaObject::activate (sender=0x9a67748, m=0xb78bfae4, local_signal_index=0, argv=0x0) at kernel/qobject.cpp:3194
#18 0xb781f5d7 in QTimer::timeout (this=0x9a67748) at .moc/release-shared/moc_qtimer.cpp:128
#19 0xb77e967e in QTimer::timerEvent (this=0x9a67748, e=0xbf910d0c) at kernel/qtimer.cpp:261
#20 0xb77de04f in QObject::event (this=0x9a67748, e=0xbf910d0c) at kernel/qobject.cpp:1082
#21 0xb6dd47bc in QApplicationPrivate::notify_helper (this=0x860d040, receiver=0x9a67748, e=0xbf910d0c) at kernel/qapplication.cpp:4057
#22 0xb6ddcace in QApplication::notify (this=0xbf9110bc, receiver=0x9a67748, e=0xbf910d0c) at kernel/qapplication.cpp:3604
#23 0xb7cbbb7d in KApplication::notify (this=0xbf9110bc, receiver=0x9a67748, event=0xbf910d0c) at ../../kdeui/kernel/kapplication.cpp:307
#24 0xb77cda2b in QCoreApplication::notifyInternal (this=0xbf9110bc, receiver=0x9a67748, event=0xbf910d0c) at kernel/qcoreapplication.cpp:610
#25 0xb77fce41 in QTimerInfoList::activateTimers (this=0x85fe334) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:213
#26 0xb77f9440 in timerSourceDispatch (source=0x85fe300) at kernel/qeventdispatcher_glib.cpp:164
#27 0xb524f848 in IA__g_main_context_dispatch (context=0x85fced8) at /build/buildd-glib2.0_2.20.1-2-i386-hGzT8z/glib2.0-2.20.1/glib/gmain.c:1814
#28 0xb5252dab in g_main_context_iterate (context=0x85fced8, block=1, dispatch=1, self=0x860cd70) at /build/buildd-glib2.0_2.20.1-2-i386-hGzT8z/glib2.0-2.20.1/glib/gmain.c:2448
#29 0xb5252f28 in IA__g_main_context_iteration (context=0x85fced8, may_block=1) at /build/buildd-glib2.0_2.20.1-2-i386-hGzT8z/glib2.0-2.20.1/glib/gmain.c:2511
#30 0xb77f9398 in QEventDispatcherGlib::processEvents (this=0x85e2a20, flags={i = -1081012600}) at kernel/qeventdispatcher_glib.cpp:324
#31 0xb6e750e5 in QGuiEventDispatcherGlib::processEvents (this=0x85e2a20, flags={i = -1081012552}) at kernel/qguieventdispatcher_glib.cpp:202
#32 0xb77cc05a in QEventLoop::processEvents (this=0xbf910f30, flags={i = -1081012488}) at kernel/qeventloop.cpp:149
#33 0xb77cc49a in QEventLoop::exec (this=0xbf910f30, flags={i = -1081012424}) at kernel/qeventloop.cpp:200
#34 0xb77ce949 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:888
#35 0xb6dd4637 in QApplication::exec () at kernel/qapplication.cpp:3526
#36 0x0804bd17 in main (argc=1, argv=0xbf9112b4) at ../../../kontact/src/main.cpp:218

Server is dovecot imap with maildir storage, although I'm not sure this is a factor given the names of the functions being called in the backtrace.
Comment 3 Dario Andres 2009-05-12 20:39:58 UTC
@Richard Salts: the crash could be different from the original reported here. And as the policy here is one report per crash I need to ask you to file a new bug report containing your backtrace and the information of your configuration. Do not forget to include your KDE4 version and Linux distribution. Thanks a lot!
Comment 4 Szymon Stefanek 2009-05-29 01:49:50 UTC
SVN commit 974322 by stefanek:

Avoid another condition that may cause the threading
cache to become unsorted (and thus cause asserts on
item removal).

BUG: 187334
BUG: 192815
BUG: 194430




 M  +37 -5     model.cpp  


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