Bug 300837 - Kmail crashed when trying to use the 'search' function.
Summary: Kmail crashed when trying to use the 'search' function.
Status: RESOLVED FIXED
Alias: None
Product: kmail2
Classification: Applications
Component: general (show other bugs)
Version: 4.8.2
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: kdepim bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-05-29 23:32 UTC by Tristan
Modified: 2012-05-30 14:24 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In: 4.8.4


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Tristan 2012-05-29 23:32:18 UTC
Application: kmail (4.8.2)
KDE Platform Version: 4.8.2 (4.8.2)
Qt Version: 4.8.1
Operating System: Linux 3.2.0-24-generic i686
Distribution: Ubuntu 12.04 LTS

-- Information about the crash:
Used the search function when application quit.
Tried to use the "s" key.

-- Backtrace:
Application: KMail (kmail), signal: Segmentation fault
Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0xb5e30740 (LWP 24304))]

Thread 6 (Thread 0xb45b1b40 (LWP 24305)):
#0  0x00210416 in __kernel_vsyscall ()
#1  0x025c3380 in poll () from /lib/i386-linux-gnu/libc.so.6
#2  0x0201ca3b in g_poll () from /lib/i386-linux-gnu/libglib-2.0.so.0
#3  0x0200f06e in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#4  0x0200f52b in g_main_loop_run () from /lib/i386-linux-gnu/libglib-2.0.so.0
#5  0x03dfb134 in ?? () from /usr/lib/i386-linux-gnu/gio/modules/libdconfsettings.so
#6  0x02032673 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#7  0x01d73d4c in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#8  0x025d1ace in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 5 (Thread 0xb3bffb40 (LWP 24306)):
#0  0x00210416 in __kernel_vsyscall ()
#1  0x025c3380 in poll () from /lib/i386-linux-gnu/libc.so.6
#2  0x0201ca3b in g_poll () from /lib/i386-linux-gnu/libglib-2.0.so.0
#3  0x0200f06e in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#4  0x0200f52b in g_main_loop_run () from /lib/i386-linux-gnu/libglib-2.0.so.0
#5  0x0877b0ea in ?? () from /usr/lib/i386-linux-gnu/libgio-2.0.so.0
#6  0x02032673 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#7  0x01d73d4c in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#8  0x025d1ace in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 4 (Thread 0xb1d44b40 (LWP 24311)):
#0  0x00210416 in __kernel_vsyscall ()
#1  0x01d7796b in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
#2  0x025df3dc in pthread_cond_wait () from /lib/i386-linux-gnu/libc.so.6
#3  0xb7063263 in ?? () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#4  0xb706337f in ?? () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#5  0x01d73d4c in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#6  0x025d1ace in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 3 (Thread 0xb1423b40 (LWP 24312)):
#0  0x00210416 in __kernel_vsyscall ()
#1  0x025c3380 in poll () from /lib/i386-linux-gnu/libc.so.6
#2  0x0201ca3b in g_poll () from /lib/i386-linux-gnu/libglib-2.0.so.0
#3  0x0200f06e in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#4  0x0200f1c1 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#5  0x0674b8e7 in QEventDispatcherGlib::processEvents (this=0x8ec1ef0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#6  0x0671750d in QEventLoop::processEvents (this=0xb1423270, flags=...) at kernel/qeventloop.cpp:149
#7  0x067177a9 in QEventLoop::exec (this=0xb1423270, flags=...) at kernel/qeventloop.cpp:204
#8  0x0660094c in QThread::exec (this=0x8ec1a70) at thread/qthread.cpp:501
#9  0x06600a3b in QThread::run (this=0x8ec1a70) at thread/qthread.cpp:568
#10 0x06603de0 in QThreadPrivate::start (arg=0x8ec1a70) at thread/qthread_unix.cpp:298
#11 0x01d73d4c in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#12 0x025d1ace in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 2 (Thread 0xab15ab40 (LWP 24950)):
#0  0x00295dcd in clock_gettime () from /lib/i386-linux-gnu/librt.so.1
#1  0x06662315 in do_gettime (frac=0xab159fb0, sec=0xab159fa8) at tools/qelapsedtimer_unix.cpp:123
#2  qt_gettime () at tools/qelapsedtimer_unix.cpp:140
#3  0x0674c226 in QTimerInfoList::updateCurrentTime (this=0xb2804f8c) at kernel/qeventdispatcher_unix.cpp:343
#4  0x0674c57a in QTimerInfoList::timerWait (this=0xb2804f8c, tm=...) at kernel/qeventdispatcher_unix.cpp:450
#5  0x0674ae23 in timerSourcePrepareHelper (src=<optimized out>, timeout=0xab15a0bc) at kernel/qeventdispatcher_glib.cpp:136
#6  0x0674aebd in timerSourcePrepare (source=0xb2804f58, timeout=<optimized out>) at kernel/qeventdispatcher_glib.cpp:169
#7  0x0200e762 in g_main_context_prepare () from /lib/i386-linux-gnu/libglib-2.0.so.0
#8  0x0200ef6f in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#9  0x0200f1c1 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#10 0x0674b8e7 in QEventDispatcherGlib::processEvents (this=0xb2801120, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#11 0x0671750d in QEventLoop::processEvents (this=0xab15a240, flags=...) at kernel/qeventloop.cpp:149
#12 0x067177a9 in QEventLoop::exec (this=0xab15a240, flags=...) at kernel/qeventloop.cpp:204
#13 0x0660094c in QThread::exec (this=0xa23b948) at thread/qthread.cpp:501
#14 0x066f4b5d in QInotifyFileSystemWatcherEngine::run (this=0xa23b948) at io/qfilesystemwatcher_inotify.cpp:248
#15 0x06603de0 in QThreadPrivate::start (arg=0xa23b948) at thread/qthread_unix.cpp:298
#16 0x01d73d4c in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#17 0x025d1ace in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 1 (Thread 0xb5e30740 (LWP 24304)):
[KCrash Handler]
#7  MessageViewer::NodeHelper::cleanSubject (message=0x0, prefixRegExps=..., replace=true, newPrefix=...) at ../../messageviewer/nodehelper.cpp:534
#8  0x05f9acb2 in MessageViewer::NodeHelper::cleanSubject (message=0x0) at ../../messageviewer/nodehelper.cpp:527
#9  0x05fcf993 in MessageViewer::Util::saveMessageInMbox (retrievedMsgs=..., parent=0x0, appendMessages=false) at ../../messageviewer/util.cpp:460
#10 0x05febe8a in MessageViewer::ViewerPrivate::slotSaveMessage (this=0x8eb4188) at ../../messageviewer/viewer_p.cpp:2517
#11 0x05fed44d in MessageViewer::ViewerPrivate::qt_static_metacall (_o=0x8eb4188, _c=QMetaObject::InvokeMetaMethod, _id=68, _a=0xbfac4df8) at ./viewer_p.moc:245
#12 0x0672f6b1 in QMetaObject::activate (sender=0x8f1c120, m=0x17dc3f8, local_signal_index=1, argv=0xbfac4df8) at kernel/qobject.cpp:3547
#13 0x00e5d9bd in QAction::triggered (this=0x8f1c120, _t1=false) at .moc/release-shared/moc_qaction.cpp:277
#14 0x00e5dc5b in QAction::activate (this=0x8f1c120, event=QAction::Trigger) at kernel/qaction.cpp:1257
#15 0x00e5ddf0 in QAction::event (this=0x8914d28, e=0x0) at kernel/qaction.cpp:1183
#16 0x0050caff in KAction::event (this=0x8f1c120, event=0xbfac52d8) at ../../kdeui/actions/kaction.cpp:131
#17 0x00e64ed4 in notify_helper (e=0xbfac52d8, receiver=0x8f1c120, this=0x8a2ae80) at kernel/qapplication.cpp:4559
#18 QApplicationPrivate::notify_helper (this=0x8a2ae80, receiver=0x8f1c120, e=0xbfac52d8) at kernel/qapplication.cpp:4531
#19 0x00e6a30d in QApplication::notify (this=0xbfac52d8, receiver=0x8f1c120, e=0xbfac52d8) at kernel/qapplication.cpp:4288
#20 0x00612b21 in KApplication::notify (this=0xbfac610c, receiver=0x8f1c120, event=0xbfac52d8) at ../../kdeui/kernel/kapplication.cpp:311
#21 0x0671897e in QCoreApplication::notifyInternal (this=0xbfac610c, receiver=0x8f1c120, event=0xbfac52d8) at kernel/qcoreapplication.cpp:876
#22 0x00e9d5f7 in sendEvent (event=0xbfac52d8, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#23 QShortcutMap::dispatchEvent (this=0x8a2af28, e=0xbfac5714) at kernel/qshortcutmap.cpp:879
#24 0x00e9ebd5 in QShortcutMap::tryShortcutEvent (this=0x8a2af28, o=0x8e97070, e=0xbfac5714) at kernel/qshortcutmap.cpp:364
#25 0x00e6c1ec in QApplication::notify (this=0x8e97070, receiver=0x8e97070, e=0xbfac5714) at kernel/qapplication.cpp:3983
#26 0x00612b21 in KApplication::notify (this=0xbfac610c, receiver=0x8e97070, event=0xbfac5714) at ../../kdeui/kernel/kapplication.cpp:311
#27 0x0671897e in QCoreApplication::notifyInternal (this=0xbfac610c, receiver=0x8e97070, event=0xbfac5714) at kernel/qcoreapplication.cpp:876
#28 0x00e62ced in sendSpontaneousEvent (event=0xbfac5714, receiver=0x8e97070) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:234
#29 qt_sendSpontaneousEvent (receiver=0x8e97070, event=0xbfac5714) at kernel/qapplication.cpp:5557
#30 0x00f19401 in QKeyMapper::sendKeyEvent (keyWidget=0x8e97070, grab=false, type=QEvent::KeyPress, code=83, modifiers=..., text=..., autorepeat=false, count=-1079224556, nativeScanCode=143740200, nativeVirtualKey=143740200, nativeModifiers=143740200) at kernel/qkeymapper_x11.cpp:1866
#31 0x00f198ab in QKeyMapperPrivate::translateKeyEvent (this=0x8a50388, keyWidget=0x8e97070, event=0xbfac5d3c, grab=false) at kernel/qkeymapper_x11.cpp:1836
#32 0x00ef07b5 in QApplication::x11ProcessEvent (this=0xbfac610c, event=0xbfac5d3c) at kernel/qapplication_x11.cpp:3625
#33 0x00f1deac in x11EventSourceDispatch (s=0x8a2bef8, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#34 0x0200ecda in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0
#35 0x0200f0e5 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#36 0x0200f1c1 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#37 0x0674b887 in QEventDispatcherGlib::processEvents (this=0x890dea8, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#38 0x00f1daaa in QGuiEventDispatcherGlib::processEvents (this=0x890dea8, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#39 0x0671750d in QEventLoop::processEvents (this=0xbfac6034, flags=...) at kernel/qeventloop.cpp:149
#40 0x067177a9 in QEventLoop::exec (this=0xbfac6034, flags=...) at kernel/qeventloop.cpp:204
#41 0x0671ceba in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1148
#42 0x00e62a74 in QApplication::exec () at kernel/qapplication.cpp:3820
#43 0x0804a266 in main (argc=50331648, argv=0x0) at ../../kmail/main.cpp:145

Reported using DrKonqi
Comment 1 Allen Winter 2012-05-30 14:24:51 UTC
Git commit 49af5052c5113633147a85e8603c17479e23c103 by Allen Winter.
Committed on 30/05/2012 at 16:21.
Pushed by winterz into branch 'master'.

in slotSaveMessage(), handle the possibility of an invalid message item
in cleanSubject(), handle the possbility of an null KMime::Message
FIXED-IN: 4.8.4
MERGE: 4.8

M  +11   -5    messageviewer/nodehelper.cpp
M  +31   -22   messageviewer/viewer_p.cpp

http://commits.kde.org/kdepim/49af5052c5113633147a85e8603c17479e23c103