Bug 332944

Summary: kmail crash when changing folder after having send a message
Product: [Applications] kmail2 Reporter: Bruno Friedmann <bruno>
Component: generalAssignee: kdepim bugs <kdepim-bugs>
Status: RESOLVED UNMAINTAINED    
Severity: crash Keywords: drkonqi
Priority: NOR    
Version: 4.12.97   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Bruno Friedmann 2014-04-02 06:55:40 UTC
Application: kmail (4.13 rc)
KDE Platform Version: 4.12.97
Qt Version: 4.8.5
Operating System: Linux 3.13.7-1.ga68bc7c-desktop x86_64
Distribution: "openSUSE 13.1 (Bottle) (x86_64)"

-- Information about the crash:
- What I was doing when the application crashed: Ive written a message, then delete two others in a another folder. And click on another folder = kaboom

The crash can be reproduced sometimes.

-- Backtrace:
Application: KMail (kmail), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7fbef13098c0 (LWP 17239))]

Thread 5 (Thread 0x7fbecb314700 (LWP 17334)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007fbee2692f56 in WTF::TCMalloc_PageHeap::scavengerThread (this=0x7fbee315b5a0 <WTF::pageheap_memory>) at /usr/src/debug/webkit-qtwebkit-23/Source/WTF/wtf/FastMalloc.cpp:2571
#2  0x00007fbee2692f89 in WTF::TCMalloc_PageHeap::runScavengerThread (context=<optimized out>) at /usr/src/debug/webkit-qtwebkit-23/Source/WTF/wtf/FastMalloc.cpp:1767
#3  0x00007fbeec4430db in start_thread (arg=0x7fbecb314700) at pthread_create.c:309
#4  0x00007fbeee64590d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 4 (Thread 0x7fbeca183700 (LWP 17391)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007fbee24052ad in JSC::BlockAllocator::blockFreeingThreadMain (this=0x7fbecaa7d398) at /usr/src/debug/webkit-qtwebkit-23/Source/JavaScriptCore/heap/BlockAllocator.cpp:128
#2  0x00007fbee26baab6 in WTF::wtfThreadEntryPoint (param=0x1177f50) at /usr/src/debug/webkit-qtwebkit-23/Source/WTF/wtf/ThreadingPthreads.cpp:196
#3  0x00007fbeec4430db in start_thread (arg=0x7fbeca183700) at pthread_create.c:309
#4  0x00007fbeee64590d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 3 (Thread 0x7fbec9272700 (LWP 17397)):
#0  pthread_mutex_unlock (mutex=0x7fbe74000a80) at forward.c:194
#1  0x00007fbee68f72c1 in g_mutex_unlock (mutex=<optimized out>) at gthread-posix.c:232
#2  0x00007fbee68b75b1 in g_main_context_iterate (context=context@entry=0x7fbe740009c0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3715
#3  0x00007fbee68b770c in g_main_context_iteration (context=0x7fbe740009c0, may_block=1) at gmain.c:3774
#4  0x00007fbeeefd9d76 in QEventDispatcherGlib::processEvents (this=0x7fbe740008e0, flags=...) at kernel/qeventdispatcher_glib.cpp:427
#5  0x00007fbeeefabd0f in QEventLoop::processEvents (this=this@entry=0x7fbec9271d20, flags=...) at kernel/qeventloop.cpp:149
#6  0x00007fbeeefac005 in QEventLoop::exec (this=this@entry=0x7fbec9271d20, flags=...) at kernel/qeventloop.cpp:204
#7  0x00007fbeeeeaafef in QThread::exec (this=<optimized out>) at thread/qthread.cpp:536
#8  0x00007fbeeeead68f in QThreadPrivate::start (arg=0x1264ca0) at thread/qthread_unix.cpp:338
#9  0x00007fbeec4430db in start_thread (arg=0x7fbec9272700) at pthread_create.c:309
#10 0x00007fbeee64590d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 2 (Thread 0x7fbe73fff700 (LWP 17424)):
#0  0x00007fbeee63cb3d in poll () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007fbee68b7604 in g_main_context_poll (priority=2147483647, n_fds=1, fds=0x7fbe680029c0, timeout=-1, context=0x7fbe680009c0) at gmain.c:4007
#2  g_main_context_iterate (context=context@entry=0x7fbe680009c0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3708
#3  0x00007fbee68b770c in g_main_context_iteration (context=0x7fbe680009c0, may_block=1) at gmain.c:3774
#4  0x00007fbeeefd9d76 in QEventDispatcherGlib::processEvents (this=0x7fbe680008e0, flags=...) at kernel/qeventdispatcher_glib.cpp:427
#5  0x00007fbeeefabd0f in QEventLoop::processEvents (this=this@entry=0x7fbe73ffece0, flags=...) at kernel/qeventloop.cpp:149
#6  0x00007fbeeefac005 in QEventLoop::exec (this=this@entry=0x7fbe73ffece0, flags=...) at kernel/qeventloop.cpp:204
#7  0x00007fbeeeeaafef in QThread::exec (this=this@entry=0x19b7c00) at thread/qthread.cpp:536
#8  0x00007fbeeef8d513 in QInotifyFileSystemWatcherEngine::run (this=0x19b7c00) at io/qfilesystemwatcher_inotify.cpp:256
#9  0x00007fbeeeead68f in QThreadPrivate::start (arg=0x19b7c00) at thread/qthread_unix.cpp:338
#10 0x00007fbeec4430db in start_thread (arg=0x7fbe73fff700) at pthread_create.c:309
#11 0x00007fbeee64590d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 1 (Thread 0x7fbef13098c0 (LWP 17239)):
[KCrash Handler]
#6  deref (this=0x4800027ce490) at /usr/include/QtCore/qatomic_x86_64.h:133
#7  ~QString (this=0x47362c0, __in_chrg=<optimized out>) at /usr/include/QtCore/qstring.h:880
#8  ~Mailbox (this=0x47362c0, __in_chrg=<optimized out>) at /usr/src/debug/kdepimlibs-4.12.97/kmime/kmime_header_parsing.h:69
#9  node_destruct (this=<optimized out>, to=0x4736068, from=0x4736068) at /usr/include/QtCore/qlist.h:431
#10 QList<KMime::Types::Mailbox>::free (data=0x4736050, this=<optimized out>) at /usr/include/QtCore/qlist.h:757
#11 0x00007fbeeb1ce4dd in ~MailboxListPrivate (this=0x4736190, __in_chrg=<optimized out>) at /usr/src/debug/kdepimlibs-4.12.97/kmime/kmime_headers_p.h:54
#12 KMime::Headers::Generics::MailboxListPrivate::~MailboxListPrivate (this=0x4736190, __in_chrg=<optimized out>) at /usr/src/debug/kdepimlibs-4.12.97/kmime/kmime_headers_p.h:54
#13 0x00007fbeeb1bf6d1 in KMime::Headers::Base::~Base (this=0x47360e0, __in_chrg=<optimized out>) at /usr/src/debug/kdepimlibs-4.12.97/kmime/kmime_headers.cpp:164
#14 0x00007fbeeb1c01e9 in KMime::Headers::From::~From (this=0x47360e0, __in_chrg=<optimized out>) at /usr/src/debug/kdepimlibs-4.12.97/kmime/kmime_headers.cpp:2274
#15 0x00007fbeeb1bb54e in qDeleteAll<QList<KMime::Headers::Base*>::const_iterator> (end=..., begin=...) at /usr/include/QtCore/qalgorithms.h:322
#16 qDeleteAll<QList<KMime::Headers::Base*> > (c=...) at /usr/include/QtCore/qalgorithms.h:330
#17 KMime::Content::~Content (this=0x472d260, __in_chrg=<optimized out>) at /usr/src/debug/kdepimlibs-4.12.97/kmime/kmime_content.cpp:94
#18 0x00007fbeeb1d2ae9 in KMime::Message::~Message (this=0x472d260, __in_chrg=<optimized out>) at /usr/src/debug/kdepimlibs-4.12.97/kmime/kmime_message.cpp:46
#19 0x00007fbe735f9d91 in release (this=0x472d280) at /usr/include/boost/smart_ptr/detail/sp_counted_base_gcc_x86.hpp:146
#20 ~shared_count (this=0x472d2b0, __in_chrg=<optimized out>) at /usr/include/boost/smart_ptr/detail/shared_count.hpp:371
#21 ~shared_ptr (this=0x472d2a8, __in_chrg=<optimized out>) at /usr/include/boost/smart_ptr/shared_ptr.hpp:328
#22 ~Payload (this=0x472d2a0, __in_chrg=<optimized out>) at /usr/include/akonadi/itempayloadinternals_p.h:283
#23 Akonadi::Payload<boost::shared_ptr<KMime::Message> >::~Payload (this=0x472d2a0, __in_chrg=<optimized out>) at /usr/include/akonadi/itempayloadinternals_p.h:283
#24 0x00007fbeeadfda8e in ~clone_ptr (this=0x472d2c0, __in_chrg=<optimized out>) at /usr/src/debug/kdepimlibs-4.12.97/akonadi/item_p.h:49
#25 ~TypedPayload (this=0x472d2c0, __in_chrg=<optimized out>) at /usr/src/debug/kdepimlibs-4.12.97/akonadi/item_p.h:120
#26 _Destroy<Akonadi::_detail::TypedPayload> (__pointer=0x472d2c0) at /usr/include/c++/4.8/bits/stl_construct.h:93
#27 __destroy<Akonadi::_detail::TypedPayload*> (__last=<optimized out>, __first=0x472d2c0) at /usr/include/c++/4.8/bits/stl_construct.h:103
#28 _Destroy<Akonadi::_detail::TypedPayload*> (__last=<optimized out>, __first=<optimized out>) at /usr/include/c++/4.8/bits/stl_construct.h:126
#29 _Destroy<Akonadi::_detail::TypedPayload*, Akonadi::_detail::TypedPayload> (__last=0x472d2d0, __first=<optimized out>) at /usr/include/c++/4.8/bits/stl_construct.h:151
#30 ~vector (this=0x472c758, __in_chrg=<optimized out>) at /usr/include/c++/4.8/bits/stl_vector.h:415
#31 ~ItemPrivate (this=0x472c710, __in_chrg=<optimized out>) at /usr/src/debug/kdepimlibs-4.12.97/akonadi/item_p.h:204
#32 Akonadi::ItemPrivate::~ItemPrivate (this=0x472c710, __in_chrg=<optimized out>) at /usr/src/debug/kdepimlibs-4.12.97/akonadi/item_p.h:205
#33 0x00007fbeeade32cc in ~QHashNode (this=<optimized out>, __in_chrg=<optimized out>) at /usr/include/QtCore/qhash.h:216
#34 deleteNode2 (node=<optimized out>) at /usr/include/QtCore/qhash.h:521
#35 deleteNode (node=<optimized out>, this=0x12ee860) at /usr/include/QtCore/qhash.h:511
#36 QHash<long long, Akonadi::Item>::remove (this=0x12ee860, akey=<optimized out>) at /usr/include/QtCore/qhash.h:797
#37 0x00007fbeeadda84f in Akonadi::EntityTreeModelPrivate::removeItems (this=this@entry=0x12ee850, it=..., end=..., pos=pos@entry=0x7fffa18785ec, collection=...) at /usr/src/debug/kdepimlibs-4.12.97/akonadi/entitytreemodel_p.cpp:1675
#38 0x00007fbeeaddba72 in Akonadi::EntityTreeModelPrivate::purgeItems (this=this@entry=0x12ee850, id=298) at /usr/src/debug/kdepimlibs-4.12.97/akonadi/entitytreemodel_p.cpp:1697
#39 0x00007fbeeaddbb1a in Akonadi::EntityTreeModelPrivate::deref (this=this@entry=0x12ee850, id=<optimized out>) at /usr/src/debug/kdepimlibs-4.12.97/akonadi/entitytreemodel_p.cpp:1629
#40 0x00007fbeeadd4968 in Akonadi::EntityTreeModel::setData (this=<optimized out>, index=..., value=..., role=53) at /usr/src/debug/kdepimlibs-4.12.97/akonadi/entitytreemodel.cpp:781
#41 0x00007fbeeae56c1e in rootIndexAboutToBeRemoved (removedRootIndex=..., this=<optimized out>) at /usr/src/debug/kdepimlibs-4.12.97/akonadi/selectionproxymodel.cpp:65
#42 Akonadi::SelectionProxyModel::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at /usr/src/debug/kdepimlibs-4.12.97/build/akonadi/moc_selectionproxymodel.cpp:52
#43 0x00007fbeeefc0d68 in QMetaObject::activate (sender=sender@entry=0x815c8d0, m=m@entry=0x7fbef11543a0 <KSelectionProxyModel::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7fffa18788c0) at kernel/qobject.cpp:3556
#44 0x00007fbef0d33882 in KSelectionProxyModel::rootIndexAboutToBeRemoved (this=this@entry=0x815c8d0, _t1=...) at /usr/src/debug/kdelibs-4.12.97/build/kdeui/moc_kselectionproxymodel.cpp:160
#45 0x00007fbef0d3c71b in KSelectionProxyModelPrivate::removeRangeFromProxy (this=this@entry=0x880cf30, range=...) at /usr/src/debug/kdelibs-4.12.97/kdeui/itemviews/kselectionproxymodel.cpp:1718
#46 0x00007fbef0d3d195 in KSelectionProxyModelPrivate::removeSelectionFromProxy (this=this@entry=0x880cf30, selection=...) at /usr/src/debug/kdelibs-4.12.97/kdeui/itemviews/kselectionproxymodel.cpp:1637
#47 0x00007fbef0d3d7dd in KSelectionProxyModelPrivate::selectionChanged (this=<optimized out>, _selected=..., _deselected=...) at /usr/src/debug/kdelibs-4.12.97/kdeui/itemviews/kselectionproxymodel.cpp:1887
#48 0x00007fbeeefc0d68 in QMetaObject::activate (sender=sender@entry=0x10a2d00, m=m@entry=0x7fbeeffb4620 <QItemSelectionModel::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7fffa1878e20) at kernel/qobject.cpp:3556
#49 0x00007fbeefa36537 in QItemSelectionModel::selectionChanged (this=this@entry=0x10a2d00, _t1=..., _t2=...) at .moc/release-shared/moc_qitemselectionmodel.cpp:165
#50 0x00007fbeefa3bba1 in QItemSelectionModel::emitSelectionChanged (this=this@entry=0x10a2d00, newSelection=..., oldSelection=...) at itemviews/qitemselectionmodel.cpp:1544
#51 0x00007fbeefa3c373 in QItemSelectionModel::select (this=this@entry=0x10a2d00, selection=..., command=...) at itemviews/qitemselectionmodel.cpp:1110
#52 0x00007fbeea2cae90 in MessageList::Pane::Private::onSelectionChanged (this=0x158c870, selected=..., deselected=...) at /usr/src/debug/kdepim-4.12.97/messagelist/pane.cpp:463
#53 0x00007fbeeefc0d68 in QMetaObject::activate (sender=sender@entry=0x11dd750, m=m@entry=0x7fbeeffb4620 <QItemSelectionModel::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7fffa18792f0) at kernel/qobject.cpp:3556
#54 0x00007fbeefa36537 in QItemSelectionModel::selectionChanged (this=this@entry=0x11dd750, _t1=..., _t2=...) at .moc/release-shared/moc_qitemselectionmodel.cpp:165
#55 0x00007fbeefa3bb67 in QItemSelectionModel::emitSelectionChanged (this=this@entry=0x11dd750, newSelection=..., oldSelection=...) at itemviews/qitemselectionmodel.cpp:1600
#56 0x00007fbeefa3c373 in QItemSelectionModel::select (this=0x11dd750, selection=..., command=...) at itemviews/qitemselectionmodel.cpp:1110
#57 0x00007fbeefa2832a in QTreeViewPrivate::select (this=this@entry=0x14fb1e0, topIndex=..., bottomIndex=..., command=...) at itemviews/qtreeview.cpp:3683
#58 0x00007fbeefa28c2c in QTreeView::setSelection (this=<optimized out>, rect=..., command=...) at itemviews/qtreeview.cpp:2293
#59 0x00007fbeef9e86ea in QAbstractItemView::mousePressEvent (this=0x11edcd0, event=<optimized out>) at itemviews/qabstractitemview.cpp:1690
#60 0x00007fbeef541db1 in QWidget::event (this=this@entry=0x11edcd0, event=event@entry=0x7fffa187a120) at kernel/qwidget.cpp:8372
#61 0x00007fbeef8decae in QFrame::event (this=0x11edcd0, e=0x7fffa187a120) at widgets/qframe.cpp:557
#62 0x00007fbeef9edf33 in QAbstractItemView::viewportEvent (this=this@entry=0x11edcd0, event=event@entry=0x7fffa187a120) at itemviews/qabstractitemview.cpp:1644
#63 0x00007fbeefa2ce50 in QTreeView::viewportEvent (this=0x11edcd0, event=0x7fffa187a120) at itemviews/qtreeview.cpp:1252
#64 0x00007fbeeefad216 in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=this@entry=0xdd3d50, receiver=receiver@entry=0x167af40, event=event@entry=0x7fffa187a120) at kernel/qcoreapplication.cpp:1059
#65 0x00007fbeef4f29cc in QApplicationPrivate::notify_helper (this=this@entry=0xdd3d50, receiver=receiver@entry=0x167af40, e=e@entry=0x7fffa187a120) at kernel/qapplication.cpp:4558
#66 0x00007fbeef4f90ed in QApplication::notify (this=this@entry=0x7fffa187ac20, receiver=receiver@entry=0x167af40, e=e@entry=0x7fffa187a120) at kernel/qapplication.cpp:4105
#67 0x00007fbef0d4d47a in KApplication::notify (this=0x7fffa187ac20, receiver=0x167af40, event=0x7fffa187a120) at /usr/src/debug/kdelibs-4.12.97/kdeui/kernel/kapplication.cpp:311
#68 0x00007fbeeefad0ad in QCoreApplication::notifyInternal (this=0x7fffa187ac20, receiver=receiver@entry=0x167af40, event=event@entry=0x7fffa187a120) at kernel/qcoreapplication.cpp:949
#69 0x00007fbeef4f88a3 in sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../src/corelib/kernel/qcoreapplication.h:231
#70 QApplicationPrivate::sendMouseEvent (receiver=receiver@entry=0x167af40, event=event@entry=0x7fffa187a120, alienWidget=alienWidget@entry=0x0, nativeWidget=nativeWidget@entry=0x167af40, buttonDown=buttonDown@entry=0x7fbeeffd3278 <qt_button_down>, lastMouseReceiver=..., spontaneous=spontaneous@entry=true) at kernel/qapplication.cpp:3173
#71 0x00007fbeef56a0bb in QETWidget::translateMouseEvent (this=this@entry=0x167af40, event=event@entry=0x7fffa187a490) at kernel/qapplication_x11.cpp:4528
#72 0x00007fbeef568b2c in QApplication::x11ProcessEvent (this=0x7fffa187ac20, event=event@entry=0x7fffa187a490) at kernel/qapplication_x11.cpp:3651
#73 0x00007fbeef58f9c2 in x11EventSourceDispatch (s=s@entry=0xdd5200, callback=0x0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#74 0x00007fbee68b7316 in g_main_dispatch (context=0xdd4090) at gmain.c:3066
#75 g_main_context_dispatch (context=context@entry=0xdd4090) at gmain.c:3642
#76 0x00007fbee68b7668 in g_main_context_iterate (context=context@entry=0xdd4090, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3713
#77 0x00007fbee68b770c in g_main_context_iteration (context=0xdd4090, may_block=1) at gmain.c:3774
#78 0x00007fbeeefd9d55 in QEventDispatcherGlib::processEvents (this=0xcf9a70, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#79 0x00007fbeef58fa76 in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#80 0x00007fbeeefabd0f in QEventLoop::processEvents (this=this@entry=0x7fffa187a870, flags=...) at kernel/qeventloop.cpp:149
#81 0x00007fbeeefac005 in QEventLoop::exec (this=this@entry=0x7fffa187a870, flags=...) at kernel/qeventloop.cpp:204
#82 0x00007fbeeefb113b in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1221
#83 0x00007fbeef4f11ac in QApplication::exec () at kernel/qapplication.cpp:3823
#84 0x0000000000402f48 in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/kdepim-4.12.97/kmail/main.cpp:146

The reporter indicates this bug may be a duplicate of or related to bug 295474.

Possible duplicates by query: bug 294698.

Reported using DrKonqi
Comment 1 Denis Kurz 2016-09-24 17:59:31 UTC
This bug has only been reported for versions before 4.14, which have been unsupported for at least two years now. Can anyone tell if this bug still present?

If noone confirms this bug for a Framework-based version of kmail2 (version 5.0 or later, as part of KDE Applications 15.12 or later), it gets closed in about three months.
Comment 2 Denis Kurz 2017-01-07 22:37:38 UTC
Just as announced in my last comment, I close this bug. If you encounter it again in a recent version (at least 5.0 aka 15.08), please open a new one unless it already exists. Thank you for all your input.