Bug 294502

Summary: KMail crashes when removing an attachement from a mail
Product: [Applications] kontact Reporter: Laurent RINEAU <laurent.rineau>
Component: generalAssignee: kdepim bugs <kdepim-bugs>
Status: RESOLVED DUPLICATE    
Severity: crash CC: gisk+kdebugs
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Fedora RPMs   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: New crash information added by DrKonqi

Description Laurent RINEAU 2012-02-20 15:29:42 UTC
Application: kontact (4.8.0)
KDE Platform Version: 4.8.00 (4.8.0
Qt Version: 4.8.0
Operating System: Linux 3.2.6-3.fc16.x86_64 x86_64
Distribution: "Fedora release 16 (Verne)"

-- Information about the crash:
- What I was doing when the application crashed:

In Kontact , in the Kmail window, in a folder view, when a mail with an attachement is shown. Right click on a attachement, and choose "remove the attachment". That crashes Kontact.

The mail is stored in a remove imap server. As a matter of fact, the attachement that I try to remove is not removed.

The crash can be reproduced every time.

-- Backtrace:
Application: Kontact (kontact), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
82	T_PSEUDO (SYSCALL_SYMBOL, SYSCALL_NAME, SYSCALL_NARGS)
[Current thread is 1 (Thread 0x7f8eb8654840 (LWP 13606))]

Thread 3 (Thread 0x7f8eadedc700 (LWP 13607)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:165
#1  0x0000003317fb86ec in WTF::TCMalloc_PageHeap::scavengerThread (this=0x331897cc20) at ../../../Source/JavaScriptCore/wtf/FastMalloc.cpp:2495
#2  0x0000003317fb8819 in WTF::TCMalloc_PageHeap::runScavengerThread (context=<optimized out>) at ../../../Source/JavaScriptCore/wtf/FastMalloc.cpp:1618
#3  0x0000003674407d90 in start_thread (arg=0x7f8eadedc700) at pthread_create.c:309
#4  0x00000036738ef48d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 2 (Thread 0x7f8ead5c3700 (LWP 13608)):
#0  0x00000036738e6af3 in __GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=<optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x000000388ea44fd8 in g_main_context_poll (n_fds=1, fds=0x7f8ea80013e0, priority=<optimized out>, timeout=9288, context=0x7f8ea80009a0) at gmain.c:3402
#2  g_main_context_iterate (context=0x7f8ea80009a0, block=<optimized out>, dispatch=1, self=<optimized out>) at gmain.c:3084
#3  0x000000388ea4549c in g_main_context_iteration (context=0x7f8ea80009a0, may_block=1) at gmain.c:3152
#4  0x000000388fba7dc6 in QEventDispatcherGlib::processEvents (this=0x7f8ea80008c0, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:426
#5  0x000000388fb78182 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#6  0x000000388fb783d7 in QEventLoop::exec (this=0x7f8ead5c2d40, flags=...) at kernel/qeventloop.cpp:204
#7  0x000000388fa78b27 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#8  0x000000388fa7bb6b in QThreadPrivate::start (arg=0x1293f30) at thread/qthread_unix.cpp:298
#9  0x0000003674407d90 in start_thread (arg=0x7f8ead5c3700) at pthread_create.c:309
#10 0x00000036738ef48d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 1 (Thread 0x7f8eb8654840 (LWP 13606)):
[KCrash Handler]
#6  isEmpty (this=0x41) at /usr/include/QtCore/qlist.h:99
#7  isEmpty (this=0x41) at /usr/include/QtCore/qlist.h:152
#8  KMime::Content::removeContent (this=0x2153100, c=0x542a640, del=true) at /usr/src/debug/kdepimlibs-4.8.0/kmime/kmime_content.cpp:566
#9  0x00007f8e656e1803 in MessageViewer::ViewerPrivate::deleteAttachment (this=0x1bb83d0, node=0x542a640, showWarning=<optimized out>) at /usr/src/debug/kdepim-4.8.0/messageviewer/viewer_p.cpp:407
#10 0x00007f8e656f08a7 in MessageViewer::ViewerPrivate::slotAttachmentDelete (this=0x1bb83d0) at /usr/src/debug/kdepim-4.8.0/messageviewer/viewer_p.cpp:2379
#11 0x00007f8e656f396a in MessageViewer::ViewerPrivate::qt_static_metacall (_o=0x1bb83d0, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at /usr/src/debug/kdepim-4.8.0/x86_64-redhat-linux-gnu/messageviewer/viewer_p.moc:231
#12 0x000000388fb8cce1 in QMetaObject::activate (sender=0x5bdce20, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffe00eabe0) at kernel/qobject.cpp:3547
#13 0x00000030d0fc37b2 in QAction::triggered (this=<optimized out>, _t1=false) at .moc/release-shared/moc_qaction.cpp:277
#14 0x00000030d0fc399f in QAction::activate (this=0x5bdce20, event=<optimized out>) at kernel/qaction.cpp:1257
#15 0x00000030d140c859 in QMenuPrivate::activateCausedStack (this=0x2143950, causedStack=..., action=0x5bdce20, action_e=QAction::Trigger, self=true) at widgets/qmenu.cpp:1028
#16 0x00000030d1412952 in QMenuPrivate::activateAction (this=0x2143950, action=0x5bdce20, action_e=QAction::Trigger, self=true) at widgets/qmenu.cpp:1120
#17 0x0000003311f11f20 in KMenu::mouseReleaseEvent (this=0x7fffe00ec4b0, e=0x7fffe00eb7b0) at /usr/src/debug/kdelibs-4.8.0/kdeui/widgets/kmenu.cpp:464
#18 0x00000030d101a02a in QWidget::event (this=0x7fffe00ec4b0, event=0x7fffe00eb7b0) at kernel/qwidget.cpp:8361
#19 0x00000030d1413eeb in QMenu::event (this=0x7fffe00ec4b0, e=0x7fffe00eb7b0) at widgets/qmenu.cpp:2460
#20 0x00000030d0fc9994 in notify_helper (e=0x7fffe00eb7b0, receiver=0x7fffe00ec4b0, this=0x108be90) at kernel/qapplication.cpp:4550
#21 QApplicationPrivate::notify_helper (this=0x108be90, receiver=0x7fffe00ec4b0, e=0x7fffe00eb7b0) at kernel/qapplication.cpp:4522
#22 0x00000030d0fcf0e3 in QApplication::notify (this=<optimized out>, receiver=0x7fffe00ec4b0, e=0x7fffe00eb7b0) at kernel/qapplication.cpp:4093
#23 0x0000003311e50eb6 in KApplication::notify (this=0x7fffe00ee2e0, receiver=0x7fffe00ec4b0, event=0x7fffe00eb7b0) at /usr/src/debug/kdelibs-4.8.0/kdeui/kernel/kapplication.cpp:311
#24 0x000000388fb7904c in QCoreApplication::notifyInternal (this=0x7fffe00ee2e0, receiver=0x7fffe00ec4b0, event=0x7fffe00eb7b0) at kernel/qcoreapplication.cpp:876
#25 0x00000030d0fca962 in sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../src/corelib/kernel/qcoreapplication.h:231
#26 QApplicationPrivate::sendMouseEvent (receiver=0x7fffe00ec4b0, event=0x7fffe00eb7b0, alienWidget=0x0, nativeWidget=0x7fffe00ec4b0, buttonDown=0x0, lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:3161
#27 0x00000030d10469b1 in QETWidget::translateMouseEvent (this=0x7fffe00ec4b0, event=<optimized out>) at kernel/qapplication_x11.cpp:4454
#28 0x00000030d10451aa in QApplication::x11ProcessEvent (this=0x7fffe00ee2e0, event=0x7fffe00ec070) at kernel/qapplication_x11.cpp:3641
#29 0x00000030d106c97c in x11EventSourceDispatch (s=0x108fb30, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:148
#30 0x000000388ea44acd in g_main_dispatch (context=0x108e800) at gmain.c:2441
#31 g_main_context_dispatch (context=0x108e800) at gmain.c:3011
#32 0x000000388ea452c8 in g_main_context_iterate (context=0x108e800, block=<optimized out>, dispatch=1, self=<optimized out>) at gmain.c:3089
#33 0x000000388ea4549c in g_main_context_iteration (context=0x108e800, may_block=1) at gmain.c:3152
#34 0x000000388fba7d5f in QEventDispatcherGlib::processEvents (this=0x1052ee0, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#35 0x00000030d106c66e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=<optimized out>) at kernel/qguieventdispatcher_glib.cpp:207
#36 0x000000388fb78182 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#37 0x000000388fb783d7 in QEventLoop::exec (this=0x7fffe00ec440, flags=...) at kernel/qeventloop.cpp:204
#38 0x00000030d1410261 in QMenu::exec (this=0x7fffe00ec4b0, p=..., action=0x0) at widgets/qmenu.cpp:2104
#39 0x00007f8e656e51a3 in MessageViewer::ViewerPrivate::showContextMenu (this=0x1bb83d0, content=0x542a640, pos=...) at /usr/src/debug/kdepim-4.8.0/messageviewer/viewer_p.cpp:1665
#40 0x00007f8e656e5aae in MessageViewer::ViewerPrivate::slotMimeTreeContextMenuRequested (this=0x1bb83d0, pos=...) at /usr/src/debug/kdepim-4.8.0/messageviewer/viewer_p.cpp:2263
#41 0x00007f8e656f38f3 in MessageViewer::ViewerPrivate::qt_static_metacall (_o=0x1bb83d0, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at /usr/src/debug/kdepim-4.8.0/x86_64-redhat-linux-gnu/messageviewer/viewer_p.moc:223
#42 0x000000388fb8cce1 in QMetaObject::activate (sender=0x1bb9280, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffe00eca10) at kernel/qobject.cpp:3547
#43 0x00000030d100f0e2 in QWidget::customContextMenuRequested (this=<optimized out>, _t1=<optimized out>) at .moc/release-shared/moc_qwidget.cpp:374
#44 0x00000030d101a9e5 in QWidget::event (this=0x1bb9280, event=0x7fffe00ed610) at kernel/qwidget.cpp:8531
#45 0x00000030d13d1bd6 in QFrame::event (this=0x1bb9280, e=0x7fffe00ed610) at widgets/qframe.cpp:557
#46 0x00000030d14e390b in QAbstractItemView::viewportEvent (this=0x1bb9280, event=0x7fffe00ed610) at itemviews/qabstractitemview.cpp:1644
#47 0x00000030d152b205 in QTreeView::viewportEvent (this=0x1bb9280, event=0x7fffe00ed610) at itemviews/qtreeview.cpp:1257
#48 0x000000388fb791d8 in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=<optimized out>, receiver=0x1bb9cd0, event=0x7fffe00ed610) at kernel/qcoreapplication.cpp:986
#49 0x00000030d0fc995f in notify_helper (e=0x7fffe00ed610, receiver=0x1bb9cd0, this=0x108be90) at kernel/qapplication.cpp:4546
#50 QApplicationPrivate::notify_helper (this=0x108be90, receiver=0x1bb9cd0, e=0x7fffe00ed610) at kernel/qapplication.cpp:4522
#51 0x00000030d0fceccd in QApplication::notify (this=<optimized out>, receiver=0x1bb9cd0, e=0x7fffe00ed610) at kernel/qapplication.cpp:4172
#52 0x0000003311e50eb6 in KApplication::notify (this=0x7fffe00ee2e0, receiver=0x1bb9cd0, event=0x7fffe00ed610) at /usr/src/debug/kdelibs-4.8.0/kdeui/kernel/kapplication.cpp:311
#53 0x000000388fb7904c in QCoreApplication::notifyInternal (this=0x7fffe00ee2e0, receiver=0x1bb9cd0, event=0x7fffe00ed610) at kernel/qcoreapplication.cpp:876
#54 0x00000030d1046348 in sendSpontaneousEvent (event=0x7fffe00ed610, receiver=0x1bb9cd0) at ../../src/corelib/kernel/qcoreapplication.h:234
#55 QETWidget::translateMouseEvent (this=<optimized out>, event=<optimized out>) at kernel/qapplication_x11.cpp:4525
#56 0x00000030d10451aa in QApplication::x11ProcessEvent (this=0x7fffe00ee2e0, event=0x7fffe00edea0) at kernel/qapplication_x11.cpp:3641
#57 0x00000030d106c97c in x11EventSourceDispatch (s=0x108fb30, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:148
#58 0x000000388ea44acd in g_main_dispatch (context=0x108e800) at gmain.c:2441
#59 g_main_context_dispatch (context=0x108e800) at gmain.c:3011
#60 0x000000388ea452c8 in g_main_context_iterate (context=0x108e800, block=<optimized out>, dispatch=1, self=<optimized out>) at gmain.c:3089
#61 0x000000388ea4549c in g_main_context_iteration (context=0x108e800, may_block=1) at gmain.c:3152
#62 0x000000388fba7d5f in QEventDispatcherGlib::processEvents (this=0x1052ee0, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#63 0x00000030d106c66e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=<optimized out>) at kernel/qguieventdispatcher_glib.cpp:207
#64 0x000000388fb78182 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#65 0x000000388fb783d7 in QEventLoop::exec (this=0x7fffe00ee270, flags=...) at kernel/qeventloop.cpp:204
#66 0x000000388fb7cdd5 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1148
#67 0x00000000004036e9 in main (argc=1, argv=0x7fffe00ee908) at /usr/src/debug/kdepim-4.8.0/kontact/src/main.cpp:218

Reported using DrKonqi
Comment 1 Christophe Marin 2012-02-23 13:43:46 UTC

*** This bug has been marked as a duplicate of bug 287177 ***
Comment 2 Stefano 2019-11-08 11:23:58 UTC
Created attachment 123792 [details]
New crash information added by DrKonqi

kontact (5.11.3) using Qt 5.12.4

- What I was doing when the application crashed:
I was deleting attachments in a kmail session inside kontact


- Unusual behavior I noticed:
I always manage to delete the first attachment, but the whole application (kontact) crashed when I try to delete a second attachment.

-- Backtrace (Reduced):
#7  0x00007fda7b499ff2 in KMime::Content::headerByType(char const*) const () from /usr/lib/x86_64-linux-gnu/libKF5Mime.so.5abi2
#8  0x00007fda7b49ccfd in KMime::Content::contentDisposition(bool) () from /usr/lib/x86_64-linux-gnu/libKF5Mime.so.5abi2
#9  0x00007fd98ab27796 in MessageViewer::ViewerPrivate::deleteAttachment(KMime::Content*, bool) () from /usr/lib/x86_64-linux-gnu/libKF5MessageViewer.so.5abi5
#10 0x00007fd98ab385c7 in MessageViewer::ViewerPrivate::slotHandleAttachment(int) () from /usr/lib/x86_64-linux-gnu/libKF5MessageViewer.so.5abi5
[...]
#12 0x00007fda7e2b9406 in QAction::triggered(bool) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5