Bug 220960

Summary: Crash when deleting mail (and selecting new one) [QAbstractItemView::d_func, QAbstractItemView::model, QTreeWidgetItem::executePendingSort]
Product: [Unmaintained] kmail Reporter: Frederik Schwarzer <schwarzer>
Component: generalAssignee: kdepim bugs <kdepim-bugs>
Status: RESOLVED DUPLICATE    
Severity: crash CC: andresbajotierra
Priority: NOR    
Version: 1.13.0   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Frederik Schwarzer 2010-01-02 11:13:39 UTC
Application: kmail (1.13.0)
KDE Platform Version: 4.3.86 (KDE 4.3.86 (KDE 4.4 >= 20091231)) (Compiled from sources)
Qt Version: 4.6.0
Operating System: Linux 2.6.32-fs i686
Distribution: Debian GNU/Linux unstable (sid)

-- Information about the crash:
I use KMail as a stand-alone application.

What I did was:
I removed a mail from an IMAP mailbox (gmail).
The mail was already gone from the message list view and the next mail was selected (an approval mail from KDE's mailing list daemon). The new mail was then marked as "read" and its content about to be shown in the message view.
Before the mail content was shown, KMail crashed.

 -- Backtrace:
Application: KMail (kmail), signal: Segmentation fault
[KCrash Handler]
#6  QAbstractItemView::d_func (this=0x7) at itemviews/qabstractitemview.h:353
#7  QAbstractItemView::model (this=0x7) at itemviews/qabstractitemview.cpp:669
#8  0xb585cf5c in QTreeWidgetItem::executePendingSort (this=0x9f34718) at itemviews/qtreewidget.cpp:2189
#9  0xb6c8eda5 in QTreeWidgetItem::indexOfChild (this=0x9f39520, parent=0x9f34718, node=0x9ff7ad0, description=..., mimetype=..., encoding=..., size=0, revertOrder=false)
    at /usr/include/qt4/QtGui/qtreewidget.h:251
#10 KMMimePartTreeItem (this=0x9f39520, parent=0x9f34718, node=0x9ff7ad0, description=..., mimetype=..., encoding=..., size=0, revertOrder=false)
    at /home/fs/kdesvn/kdepim/kmail/kmmimeparttree.cpp:385
#11 0xb6cd8e8a in partNode::fillMimePartTree (this=0x9ff7ad0, parentItem=0x9f34718, mimePartTree=0x0, labelDescr=..., labelCntType=..., labelEncoding=..., size=0, revertOrder=<value optimized out>)
    at /home/fs/kdesvn/kdepim/kmail/partNode.cpp:549
#12 0xb6cc5efd in KMail::ObjectTreeParser::insertAndParseNewChildNode (this=0xbf8a9670, startNode=..., content=0xb5f87ea0 "", cntDesc=0xb6fc0aa2 "encapsulated message", append=<value optimized out>, 
    addToTextualContent=false) at /home/fs/kdesvn/kdepim/kmail/objecttreeparser.cpp:232
#13 0xb6cca1d9 in KMail::ObjectTreeParser::processMessageRfc822Subtype (this=0xbf8a9670, node=0xa130768) at /home/fs/kdesvn/kdepim/kmail/objecttreeparser.cpp:1582
#14 0xb6cd348b in process (this=0xa0479b0, otp=0xbf8a9670, node=0xa130768, result=...) at /home/fs/kdesvn/kdepim/kmail/bodypartformatter.cpp:116
#15 0xb6cc553b in KMail::ObjectTreeParser::parseObjectTree (this=0xbf8a9670, node=0xa130768) at /home/fs/kdesvn/kdepim/kmail/objecttreeparser.cpp:318
#16 0xb6cc58a7 in KMail::ObjectTreeParser::stdChildHandling (this=0xbf8a988c, child=0x9fb1248) at /home/fs/kdesvn/kdepim/kmail/objecttreeparser.cpp:1278
#17 0xb6cc5ca1 in KMail::ObjectTreeParser::processMultiPartMixedSubtype (this=0xbf8a988c, node=0x9f396b0) at /home/fs/kdesvn/kdepim/kmail/objecttreeparser.cpp:1291
#18 0xb6cd344b in process (this=0x9dcbcc0, otp=0xbf8a988c, node=0x9f396b0, result=...) at /home/fs/kdesvn/kdepim/kmail/bodypartformatter.cpp:118
#19 0xb6cc553b in KMail::ObjectTreeParser::parseObjectTree (this=0xbf8a988c, node=0x9f396b0) at /home/fs/kdesvn/kdepim/kmail/objecttreeparser.cpp:318
#20 0xb6b25d71 in KMReaderWin::parseMsg (this=0x923eff0, aMsg=0xa1e02e8) at /home/fs/kdesvn/kdepim/kmail/kmreaderwin.cpp:1610
#21 0xb6b19a43 in KMReaderWin::displayMessage (this=0x923eff0) at /home/fs/kdesvn/kdepim/kmail/kmreaderwin.cpp:1534
#22 0xb6b19c2d in KMReaderWin::updateReaderWin (this=0x923eff0) at /home/fs/kdesvn/kdepim/kmail/kmreaderwin.cpp:1477
#23 0xb6b1a530 in KMReaderWin::update (this=0x923eff0, observable=0xa1e0358) at /home/fs/kdesvn/kdepim/kmail/kmreaderwin.cpp:903
#24 0xb6d737c2 in KMail::ISubject::notify (this=0xa1e0358) at /home/fs/kdesvn/kdepim/kmail/isubject.cpp:33
#25 0xb6a231a2 in KMMessage::updateBodyPart (this=0xa1e02e8, partSpecifier=..., data=...) at /home/fs/kdesvn/kdepim/kmail/kmmessage.cpp:3185
#26 0xb6d483a0 in KMail::ImapJob::slotGetMessageResult (this=0x926e2f0, job=0xa023e98) at /home/fs/kdesvn/kdepim/kmail/imapjob.cpp:435
#27 0xb6d4a2ef in KMail::ImapJob::qt_metacall (this=0x926e2f0, _c=QMetaObject::InvokeMetaMethod, _id=12, _a=0xbf8a9e68) at /home/fs/kdesvn/build/kdepim/kmail/imapjob.moc:88
#28 0xb5e76755 in QMetaObject::metacall (object=0x0, cl=QMetaObject::InvokeMetaMethod, idx=12, argv=0xbf8a9e68) at kernel/qmetaobject.cpp:237
#29 0xb5e85ad1 in QMetaObject::activate (sender=0xa023e98, m=0xb734cee8, local_signal_index=3, argv=0xbf8a9e68) at kernel/qobject.cpp:3294
#30 0xb71df383 in KJob::result (this=0xa023e98, _t1=0xa023e98) at /home/fs/kdesvn/build/kdelibs/kdecore/kjob.moc:194
#31 0xb71df6e8 in KJob::emitResult (this=0xa023e98) at /home/fs/kdesvn/kdelibs/kdecore/jobs/kjob.cpp:312
#32 0xb6133080 in KIO::SimpleJob::slotFinished (this=0xa023e98) at /home/fs/kdesvn/kdelibs/kio/kio/job.cpp:475
#33 0xb613359a in KIO::TransferJob::slotFinished (this=0xa023e98) at /home/fs/kdesvn/kdelibs/kio/kio/job.cpp:975
#34 0xb6131713 in KIO::TransferJob::qt_metacall (this=0xa023e98, _c=QMetaObject::InvokeMetaMethod, _id=47, _a=0xbf8aa0e8) at /home/fs/kdesvn/build/kdelibs/kio/jobclasses.moc:367
#35 0xb5e76755 in QMetaObject::metacall (object=0x0, cl=QMetaObject::InvokeMetaMethod, idx=47, argv=0xbf8aa0e8) at kernel/qmetaobject.cpp:237
#36 0xb5e85ad1 in QMetaObject::activate (sender=0xa1b5008, m=0xb62d3de4, local_signal_index=4, argv=0x0) at kernel/qobject.cpp:3294
#37 0xb61fa637 in KIO::SlaveInterface::finished (this=0xa1b5008) at /home/fs/kdesvn/build/kdelibs/kio/slaveinterface.moc:171
#38 0xb61fd95d in KIO::SlaveInterface::dispatch (this=0xa1b5008, _cmd=104, rawdata=...) at /home/fs/kdesvn/kdelibs/kio/kio/slaveinterface.cpp:175
#39 0xb61faaf3 in KIO::SlaveInterface::dispatch (this=0xa1b5008) at /home/fs/kdesvn/kdelibs/kio/kio/slaveinterface.cpp:91
#40 0xb61edfd8 in KIO::Slave::gotInput (this=0xa1b5008) at /home/fs/kdesvn/kdelibs/kio/kio/slave.cpp:324
#41 0xb61ee1e3 in KIO::Slave::qt_metacall (this=0xa1b5008, _c=QMetaObject::InvokeMetaMethod, _id=30, _a=0xbf8aa3d8) at /home/fs/kdesvn/build/kdelibs/kio/slave.moc:82
#42 0xb5e76755 in QMetaObject::metacall (object=0x0, cl=QMetaObject::InvokeMetaMethod, idx=30, argv=0xbf8aa3d8) at kernel/qmetaobject.cpp:237
#43 0xb5e85ad1 in QMetaObject::activate (sender=0xa192290, m=0xb62d06c0, local_signal_index=0, argv=0x0) at kernel/qobject.cpp:3294
#44 0xb60fc3e7 in KIO::Connection::readyRead (this=0xa192290) at /home/fs/kdesvn/build/kdelibs/kio/connection.moc:92
#45 0xb60fe78e in KIO::ConnectionPrivate::dequeue (this=0x9ffe758) at /home/fs/kdesvn/kdelibs/kio/kio/connection.cpp:82
#46 0xb60fe8be in KIO::Connection::qt_metacall (this=0xa192290, _c=QMetaObject::InvokeMetaMethod, _id=5, _a=0x9e3d7d0) at /home/fs/kdesvn/build/kdelibs/kio/connection.moc:79
#47 0xb5e76755 in QMetaObject::metacall (object=0x0, cl=QMetaObject::InvokeMetaMethod, idx=5, argv=0x9e3d7d0) at kernel/qmetaobject.cpp:237
#48 0xb5e80cc6 in QMetaCallEvent::placeMetaCall (this=0xa1c1470, object=0xa192290) at kernel/qobject.cpp:574
#49 0xb5e82163 in QObject::event (this=0xa192290, e=0xa1c1470) at kernel/qobject.cpp:1260
#50 0xb5247b5c in QApplicationPrivate::notify_helper (this=0x90f6df0, receiver=0xa192290, e=0xa1c1470) at kernel/qapplication.cpp:4242
#51 0xb524f33d in QApplication::notify (this=0xbf8aad0c, receiver=0xa192290, e=0xa1c1470) at kernel/qapplication.cpp:3661
#52 0xb753197a in KApplication::notify (this=0xbf8aad0c, receiver=0xa192290, event=0xa1c1470) at /home/fs/kdesvn/kdelibs/kdeui/kernel/kapplication.cpp:302
#53 0xb5e713eb in QCoreApplication::notifyInternal (this=0xbf8aad0c, receiver=0xa192290, event=0xa1c1470) at kernel/qcoreapplication.cpp:704
#54 0xb5e7231f in QCoreApplication::sendEvent (receiver=0x0, event_type=0, data=0x9031268) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#55 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x9031268) at kernel/qcoreapplication.cpp:1345
#56 0xb5ea131a in QEventDispatcherUNIX::processEvents (this=0x9057af0, flags=...) at kernel/qeventdispatcher_unix.cpp:892
#57 0xb53047d6 in QEventDispatcherX11::processEvents (this=0x9057af0, flags=...) at kernel/qeventdispatcher_x11.cpp:152
#58 0xb5e6fa3a in QEventLoop::processEvents (this=0xbf8aabe0, flags=...) at kernel/qeventloop.cpp:149
#59 0xb5e6fe82 in QEventLoop::exec (this=0xbf8aabe0, flags=...) at kernel/qeventloop.cpp:201
#60 0xb5e72599 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:981
#61 0xb5247bf7 in QApplication::exec () at kernel/qapplication.cpp:3570
#62 0x0804acee in main (argc=3, argv=0xbf8aaeb4) at /home/fs/kdesvn/kdepim/kmail/main.cpp:156

Reported using DrKonqi
Comment 1 Frederik Schwarzer 2010-01-02 11:23:59 UTC
Now that I was able to restart KMail (I got a "runs on another screen" warning when trying to run it during the crash manager procedure) I can see that the email is not deleted. It exists in my mailbox _and_ in the trash, though.
The second email has an attachment and embedded messages.

And, importantly: I cannot reproduce the issue with these two emails.
Comment 2 Dario Andres 2010-01-02 23:03:03 UTC
This is being tracked at bug 186502. Thanks

*** This bug has been marked as a duplicate of bug 186502 ***