Bug 153171 - Crash on selecting IMAP attachment
Summary: Crash on selecting IMAP attachment
Status: RESOLVED UNMAINTAINED
Alias: None
Product: kmail
Classification: Applications
Component: messageviewer (show other bugs)
Version: SVN trunk (KDE 4)
Platform: Gentoo Packages Linux
: NOR crash
Target Milestone: ---
Assignee: kdepim bugs
URL:
Keywords: triaged
: 238051 (view as bug list)
Depends on:
Blocks:
 
Reported: 2007-11-30 11:31 UTC by kavol
Modified: 2012-08-19 11:04 UTC (History)
2 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 kavol 2007-11-30 11:31:21 UTC
Version:            (using KDE KDE 3.5.8)
Installed from:    Gentoo Packages
Compiler:          gcc (GCC) 4.1.2 (Gentoo 4.1.2 p1.0.2) 
OS:                Linux

I've been reading my inbox on a remote (IMAP) server

the last e-mail contained a photo - I clicked on it in the message view and opened it in kuickshow

then I replied to that e-mail

then I clicked the photo again and wanted it saved - the strange thing is that the displayed name was DSC01840_pre.jpg but the save as dialogue suggested "příloha.1" (příloha = attachment) ... I browsed to the right folder, renamed the file and "saved" it

I put quotes around "saved" because the resulting file was empty (zero lenght)

then I tried to click on the attachment part of the message in the view of message parts (below the message view in the default layout) and kmail crashed instantly; see the backtrace below

I tried to search for duplicates: there are three open bugs with "FindField" in backtraces - #98390, #132056 and #136437 - but none of them seems relevant to me ... no MDN, no network unstability (fetchTimeout), no screwed X-UID header ...


Using host libthread_db library "/lib/libthread_db.so.1".
[KCrash handler]
#5  0x00002b958f05e1f0 in DwHeaders::FindField ()
   from /usr/kde/3.5/lib64/libmimelib.so.1
#6  0x00002b958f05e270 in DwHeaders::HasContentDisposition ()
   from /usr/kde/3.5/lib64/libmimelib.so.1
#7  0x00002b958e265539 in partNode::hasContentDispositionInline (
    this=<value optimized out>) at partNode.cpp:599
#8  0x00002b958e35d9b8 in KMail::ObjectTreeParser::defaultHandling (
    this=0x7fff1ce41470, node=0x1470330, result=@0x7fff1ce41400)
    at objecttreeparser.cpp:315
#9  0x00002b958e35df10 in KMail::ObjectTreeParser::parseObjectTree (
    this=0x7fff1ce41470, node=0x1470330) at objecttreeparser.cpp:288
#10 0x00002b958e364177 in KMReaderWin::setMsgPart (this=0xf72c00, 
    node=0x1470330) at kmreaderwin.cpp:2017
#11 0x00002b958e364252 in KMMimePartTree::itemClicked (this=0xf75700, 
    item=<value optimized out>) at kmmimeparttree.cpp:112
#12 0x00002b958e36433c in KMMimePartTree::qt_invoke (this=0xf75700, _id=105, 
    _o=0x7fff1ce41600) at kmmimeparttree.moc:97
#13 0x00002b9593d0c24c in QObject::activate_signal (this=0xf75700, 
    clist=<value optimized out>, o=0x7fff1ce41600) at kernel/qobject.cpp:2356
#14 0x00002b9593ffae5f in QListView::clicked (this=<value optimized out>, 
    t0=0x19498d0) at .moc/release-shared-mt/moc_qlistview.cpp:341
#15 0x00002b9593ddcc27 in QListView::contentsMouseReleaseEventEx (
    this=0xf75700, e=0x7fff1ce418f0) at widgets/qlistview.cpp:4566
#16 0x00002b959230965f in KListView::contentsMouseReleaseEvent (this=0xf75700, 
    e=0x7fff1ce418f0) at klistview.cpp:878
#17 0x00002b9593e07f2e in QScrollView::viewportMouseReleaseEvent (
    this=0xf75700, e=0x7fff1ce41d70) at widgets/qscrollview.cpp:1750
#18 0x00002b9593e05f5f in QScrollView::eventFilter (this=0xf75700, 
    obj=0xf766a0, e=0x7fff1ce41d70) at widgets/qscrollview.cpp:1501
#19 0x00002b9593dd91cf in QListView::eventFilter (this=0xf75700, o=0xf766a0, 
    e=0x7fff1ce41d70) at widgets/qlistview.cpp:3867
#20 0x00002b9593d0bc62 in QObject::activate_filters (this=0xf766a0, 
    e=0x7fff1ce41d70) at kernel/qobject.cpp:903
#21 0x00002b9593d0bcb7 in QObject::event (this=0xf766a0, e=0x7fff1ce41d70)
    at kernel/qobject.cpp:735
#22 0x00002b9593d3df58 in QWidget::event (this=0x20, e=0x2b958f073542)
    at kernel/qwidget.cpp:4659
#23 0x00002b9593cb5cb5 in QApplication::internalNotify (
    this=<value optimized out>, receiver=0xf766a0, e=0x7fff1ce41d70)
    at kernel/qapplication.cpp:2635
#24 0x00002b9593cb6aa1 in QApplication::notify (this=0x7fff1ce423d0, 
    receiver=0xf766a0, e=0x7fff1ce41d70) at kernel/qapplication.cpp:2421
#25 0x00002b9592be8fea in KApplication::notify (this=0x7fff1ce423d0, 
    receiver=0xf766a0, event=0x7fff1ce41d70) at kapplication.cpp:550
#26 0x00002b9593c5eca4 in QETWidget::translateMouseEvent (
    this=<value optimized out>, event=<value optimized out>)
    at kernel/qapplication.h:499
#27 0x00002b9593c5ddc1 in QApplication::x11ProcessEvent (this=0x7fff1ce423d0, 
    event=0x7fff1ce42210) at kernel/qapplication_x11.cpp:3562
#28 0x00002b9593c6cb7f in QEventLoop::processEvents (this=0x566ae0, flags=4)
    at kernel/qeventloop_x11.cpp:192
#29 0x00002b9593cca402 in QEventLoop::enterLoop (this=0x20)
    at kernel/qeventloop.cpp:198
#30 0x00002b9593cca2b2 in QEventLoop::exec (this=0x20)
    at kernel/qeventloop.cpp:145
#31 0x00000000004032c2 in main (argc=<value optimized out>, 
    argv=<value optimized out>) at main.cpp:110
Comment 1 Thomas McGuire 2007-11-30 14:46:41 UTC
For the empty attachments with IMAP, see also bug 95093.
The backtrace is indeed unique, thanks for checking before reporting.

Just out of interest: What KMail version is Gentoo using? Look at the Help->About dialog please.
Comment 2 kavol 2007-11-30 18:25:53 UTC
> For the empty attachments with IMAP, see also bug 95093.

I think the root cause is different - I do not see that report mentioning the messed filename ...

> Just out of interest: What KMail version is Gentoo using? Look at
> the Help->About dialog please. 

KMail 1.9.7 (Používající prostředí KDE 3.5.8)

btw, wouldn't be this easier:

$ kmail --version
Qt: 3.3.8
KDE: 3.5.8
KMail: 1.9.7
Comment 3 Ruchir Brahmbhatt 2009-04-25 14:19:32 UTC
I could reproduce on trunk r958061. In my case it asked 2nd time with "Open attachment ''?" which denotes that somehow attachment filename was gone and resulted in 0 byte file as well as crash.

Backtrace is as below:

Application: KMail (kmail), signal SIGSEGV
[?1034h[Thread debugging using libthread_db enabled]
[Current thread is 1 (Thread 0xb3a39700 (LWP 26634))]

Thread 2 (Thread 0xaf9f5b90 (LWP 26648)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb5d63411 in select () from /lib/libc.so.6
#2  0xb6b6f477 in ?? () from /usr/lib/libQtCore.so.4
#3  0xb6a9d74e in ?? () from /usr/lib/libQtCore.so.4
#4  0xb6a3b1b5 in start_thread () from /lib/libpthread.so.0
#5  0xb5d6a3be in clone () from /lib/libc.so.6

Thread 1 (Thread 0xb3a39700 (LWP 26634)):
[KCrash Handler]
#6  0xb4ef2cb1 in DwHeaders::FindField (this=0x0, aFieldName=0xb4f06809 "content-disposition") at /home/kde-devel/src/kde4/kdepim/mimelib/headers.cpp:287
#7  0xb4ef2d58 in DwHeaders::HasContentDisposition (this=0x0) at /home/kde-devel/src/kde4/kdepim/mimelib/headers.cpp:710
#8  0xb76bf534 in partNode::hasContentDispositionInline (this=0x88a86e8) at /home/kde-devel/src/kde4/kdepim/kmail/partNode.cpp:589
#9  0xb76abdc8 in KMail::ObjectTreeParser::defaultHandling (this=0xbfde4590, node=0x88a86e8, result=@0xbfde4504) at /home/kde-devel/src/kde4/kdepim/kmail/objecttreeparser.cpp:331
#10 0xb76ac64c in KMail::ObjectTreeParser::parseObjectTree (this=0xbfde4590, node=0x88a86e8) at /home/kde-devel/src/kde4/kdepim/kmail/objecttreeparser.cpp:291
#11 0xb74fb825 in KMReaderWin::setMsgPart (this=0x830ed78, node=0x88a86e8) at /home/kde-devel/src/kde4/kdepim/kmail/kmreaderwin.cpp:2194
#12 0xb7678dd7 in KMMimePartTree::slotItemClicked (this=0x82e20b0, item=0x8901920) at /home/kde-devel/src/kde4/kdepim/kmail/kmmimeparttree.cpp:153
#13 0xb767d624 in KMMimePartTree::qt_metacall (this=0x82e20b0, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0xbfde46f8) at /mnt/os11/KDE4/src/build/kdepim/kmail/kmmimeparttree.moc:84
#14 0xb6ba7c88 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/libQtCore.so.4
#15 0xb6ba9412 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#16 0xb66147d9 in QTreeWidget::itemClicked(QTreeWidgetItem*, int) () from /usr/lib/libQtGui.so.4
#17 0xb66186f5 in ?? () from /usr/lib/libQtGui.so.4
#18 0xb6621dd1 in QTreeWidget::qt_metacall(QMetaObject::Call, int, void**) () from /usr/lib/libQtGui.so.4
#19 0xb72a646b in KPIM::TreeWidget::qt_metacall (this=0x82e20b0, _c=QMetaObject::InvokeMetaMethod, _id=111, _a=0xbfde488c) at /mnt/os11/KDE4/src/build/kdepim/libkdepim/moc_treewidget.cpp:68
#20 0xb767d4db in KMMimePartTree::qt_metacall (this=0x82e20b0, _c=QMetaObject::InvokeMetaMethod, _id=111, _a=0xbfde488c) at /mnt/os11/KDE4/src/build/kdepim/kmail/kmmimeparttree.moc:79
#21 0xb6ba7c88 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/libQtCore.so.4
#22 0xb6ba9412 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#23 0xb6596913 in QAbstractItemView::clicked(QModelIndex const&) () from /usr/lib/libQtGui.so.4
#24 0xb65a3f05 in QAbstractItemView::mouseReleaseEvent(QMouseEvent*) () from /usr/lib/libQtGui.so.4
#25 0xb65e703c in QTreeView::mouseReleaseEvent(QMouseEvent*) () from /usr/lib/libQtGui.so.4
#26 0xb6098af3 in QWidget::event(QEvent*) () from /usr/lib/libQtGui.so.4
#27 0xb64550a3 in QFrame::event(QEvent*) () from /usr/lib/libQtGui.so.4
#28 0xb64f518f in QAbstractScrollArea::viewportEvent(QEvent*) () from /usr/lib/libQtGui.so.4
#29 0xb65a6d97 in QAbstractItemView::viewportEvent(QEvent*) () from /usr/lib/libQtGui.so.4
#30 0xb65e1974 in QTreeView::viewportEvent(QEvent*) () from /usr/lib/libQtGui.so.4
#31 0xb64f7795 in ?? () from /usr/lib/libQtGui.so.4
#32 0xb6b90bea in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
#33 0xb6041eca in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#34 0xb604ab21 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#35 0xb7efa481 in KApplication::notify (this=0xbfde5b58, receiver=0x8287f50, event=0xbfde51b8) at /home/kde-devel/src/kde4/kdelibs/kdeui/kernel/kapplication.cpp:307
#36 0xb6b919db in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
#37 0xb6049b8e in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&) () from /usr/lib/libQtGui.so.4
#38 0xb60b98e6 in ?? () from /usr/lib/libQtGui.so.4
#39 0xb60b8c27 in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib/libQtGui.so.4
#40 0xb60e23ca in ?? () from /usr/lib/libQtGui.so.4
#41 0xb4241ea8 in IA__g_main_context_dispatch (context=0x807ce00) at gmain.c:1814
#42 0xb424541b in g_main_context_iterate (context=0x807ce00, block=1, dispatch=1, self=0x807a978) at gmain.c:2448
#43 0xb4245598 in IA__g_main_context_iteration (context=0x807ce00, may_block=1) at gmain.c:2511
#44 0xb6bbd428 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#45 0xb60e1ac5 in ?? () from /usr/lib/libQtGui.so.4
#46 0xb6b8fffa in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#47 0xb6b9043a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#48 0xb6b928e9 in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4
#49 0xb6041d67 in QApplication::exec() () from /usr/lib/libQtGui.so.4
#50 0x0804a820 in main (argc=-1213197568, argv=0x830ed78) at /home/kde-devel/src/kde4/kdepim/kmail/main.cpp:146
Comment 4 Christophe Marin 2012-01-08 13:29:40 UTC
*** Bug 238051 has been marked as a duplicate of this bug. ***
Comment 5 Myriam Schweingruber 2012-08-19 11:04:41 UTC
Thank you for your report. Kmail1 is currently unmaintained and the code has changed sufficiently in Kmail2 so the backtraces are not really useful anymore. Should you experience the same crash in Kmail 4.8.5 or later, please open a new report for Kmail2. Thank you for your understanding