Application: kmail (4.10.2) KDE Platform Version: 4.10.2 Qt Version: 4.8.4 Operating System: Linux 3.8.0-19-generic x86_64 Distribution: Ubuntu 13.04 -- Information about the crash: - What I was doing when the application crashed: kmail was acting very sluggishly. I attempted to quit the app to restart when the crash occurred. The crash can be reproduced sometimes. -- Backtrace: Application: KMail (kmail), signal: Segmentation fault Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 [Current thread is 1 (Thread 0x7f4f37045800 (LWP 8051))] Thread 6 (Thread 0x7f4f10bad700 (LWP 8055)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 #1 0x00007f4f28779585 in ?? () from /usr/lib/x86_64-linux-gnu/libQtWebKit.so.4 #2 0x00007f4f287795d9 in ?? () from /usr/lib/x86_64-linux-gnu/libQtWebKit.so.4 #3 0x00007f4f31cd3f8e in start_thread (arg=0x7f4f10bad700) at pthread_create.c:311 #4 0x00007f4f343dbe1d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113 Thread 5 (Thread 0x7f4ecfc15700 (LWP 8056)): #0 pthread_mutex_lock (mutex=0x7f4ec8000a60) at forward.c:192 #1 0x00007f4f2c6665c1 in g_mutex_lock () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #2 0x00007f4f2c62690b in g_main_context_prepare () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #3 0x00007f4f2c6270fe in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #4 0x00007f4f2c627304 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #5 0x00007f4f34d6a036 in QEventDispatcherGlib::processEvents (this=0x7f4ec80008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:426 #6 0x00007f4f34d3a38f in QEventLoop::processEvents (this=this@entry=0x7f4ecfc14d50, flags=...) at kernel/qeventloop.cpp:149 #7 0x00007f4f34d3a618 in QEventLoop::exec (this=this@entry=0x7f4ecfc14d50, flags=...) at kernel/qeventloop.cpp:204 #8 0x00007f4f34c3c410 in QThread::exec (this=this@entry=0xe92030) at thread/qthread.cpp:542 #9 0x00007f4f34d1bedf in QInotifyFileSystemWatcherEngine::run (this=0xe92030) at io/qfilesystemwatcher_inotify.cpp:256 #10 0x00007f4f34c3ebec in QThreadPrivate::start (arg=0xe92030) at thread/qthread_unix.cpp:338 #11 0x00007f4f31cd3f8e in start_thread (arg=0x7f4ecfc15700) at pthread_create.c:311 #12 0x00007f4f343dbe1d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113 Thread 4 (Thread 0x7f4eceb85700 (LWP 8057)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 #1 0x00007f4f284bfa09 in ?? () from /usr/lib/x86_64-linux-gnu/libQtWebKit.so.4 #2 0x00007f4f287a7cee in ?? () from /usr/lib/x86_64-linux-gnu/libQtWebKit.so.4 #3 0x00007f4f31cd3f8e in start_thread (arg=0x7f4eceb85700) at pthread_create.c:311 #4 0x00007f4f343dbe1d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113 Thread 3 (Thread 0x7f4ecd573700 (LWP 8062)): #0 0x00007f4f2c6246f0 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #1 0x00007f4f2c626d12 in g_main_context_check () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #2 0x00007f4f2c627175 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #3 0x00007f4f2c627304 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #4 0x00007f4f34d6a036 in QEventDispatcherGlib::processEvents (this=0x7f4eb80008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:426 #5 0x00007f4f34d3a38f in QEventLoop::processEvents (this=this@entry=0x7f4ecd572d80, flags=...) at kernel/qeventloop.cpp:149 #6 0x00007f4f34d3a618 in QEventLoop::exec (this=this@entry=0x7f4ecd572d80, flags=...) at kernel/qeventloop.cpp:204 #7 0x00007f4f34c3c410 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:542 #8 0x00007f4f34c3ebec in QThreadPrivate::start (arg=0xe8fb60) at thread/qthread_unix.cpp:338 #9 0x00007f4f31cd3f8e in start_thread (arg=0x7f4ecd573700) at pthread_create.c:311 #10 0x00007f4f343dbe1d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113 Thread 2 (Thread 0x7f4ebffff700 (LWP 8226)): [KCrash Handler] #6 lockInline (this=0x40) at /usr/include/qt4/QtCore/qmutex.h:187 #7 QMutexLocker (m=0x40, this=<synthetic pointer>) at /usr/include/qt4/QtCore/qmutex.h:109 #8 Nepomuk2::ResourceData::load (this=this@entry=0x0) at ../../libnepomukcore/resource/resourcedata.cpp:345 #9 0x00007f4f2d0681ce in Nepomuk2::ResourceData::property (this=0x0, uri=...) at ../../libnepomukcore/resource/resourcedata.cpp:238 #10 0x00007f4f2d078143 in Nepomuk2::Resource::property (this=this@entry=0x7f4ebfffed10, uri=...) at ../../libnepomukcore/resource/resource.cpp:226 #11 0x00007f4f3089ca6a in MessageCore::NepomukResourceRetrieverRunnable::run (this=0x3e03270) at ../../messagecore/asyncnepomukresourceretriever.cpp:48 #12 0x00007f4f34c3255d in QThreadPoolThread::run (this=0x11d9910) at concurrent/qthreadpool.cpp:107 #13 0x00007f4f34c3ebec in QThreadPrivate::start (arg=0x11d9910) at thread/qthread_unix.cpp:338 #14 0x00007f4f31cd3f8e in start_thread (arg=0x7f4ebffff700) at pthread_create.c:311 #15 0x00007f4f343dbe1d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113 Thread 1 (Thread 0x7f4f37045800 (LWP 8051)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 #1 0x00007f4f34c3f14b in wait (time=18446744073709551615, this=0x114cd10) at thread/qwaitcondition_unix.cpp:86 #2 QWaitCondition::wait (this=this@entry=0x11eba90, mutex=0x11eba68, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:158 #3 0x00007f4f34c31d2f in QThreadPoolPrivate::waitForDone (this=0x11eb9e0, msecs=msecs@entry=-1) at concurrent/qthreadpool.cpp:298 #4 0x00007f4f34c337dd in QThreadPool::~QThreadPool (this=0x11eb888, __in_chrg=<optimized out>) at concurrent/qthreadpool.cpp:440 #5 0x00007f4f3089be11 in ~AsyncNepomukResourceRetrieverPrivate (this=0x11eb880, __in_chrg=<optimized out>) at ../../messagecore/asyncnepomukresourceretriever.cpp:59 #6 MessageCore::AsyncNepomukResourceRetriever::~AsyncNepomukResourceRetriever (this=0x11d85c0, __in_chrg=<optimized out>) at ../../messagecore/asyncnepomukresourceretriever.cpp:124 #7 0x00007f4f302b9812 in ~CallbackNepomukResourceRetriever (this=0x11d85c0, __in_chrg=<optimized out>) at ../../messagelist/core/callbacknepomukresourceretriever.h:32 #8 MessageList::CallbackNepomukResourceRetriever::~CallbackNepomukResourceRetriever (this=0x11d85c0, __in_chrg=<optimized out>) at ../../messagelist/core/callbacknepomukresourceretriever.h:32 #9 0x00007f4f3431e121 in __run_exit_handlers (status=1, listp=0x7f4f346a36a8 <__exit_funcs>, run_list_atexit=run_list_atexit@entry=true) at exit.c:77 #10 0x00007f4f3431e1a5 in __GI_exit (status=<optimized out>) at exit.c:99 #11 0x00007f4f352cf348 in qt_xio_errhandler () at kernel/qapplication_x11.cpp:782 #12 0x00007f4f36a72888 in KApplication::xioErrhandler (this=0x7fff54bddbf0, dpy=0x829bb0) at ../../kdeui/kernel/kapplication.cpp:419 #13 0x00007f4f33bc96de in _XIOError () from /usr/lib/x86_64-linux-gnu/libX11.so.6 #14 0x00007f4f33bc716d in _XEventsQueued () from /usr/lib/x86_64-linux-gnu/libX11.so.6 #15 0x00007f4f33bb875b in XEventsQueued () from /usr/lib/x86_64-linux-gnu/libX11.so.6 #16 0x00007f4f3530ac37 in x11EventSourcePrepare (s=0x7cfda0, timeout=<optimized out>) at kernel/qguieventdispatcher_glib.cpp:77 #17 0x00007f4f2c626900 in g_main_context_prepare () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #18 0x00007f4f2c6270fe in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #19 0x00007f4f2c627304 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #20 0x00007f4f34d6a016 in QEventDispatcherGlib::processEvents (this=0x717b00, flags=...) at kernel/qeventdispatcher_glib.cpp:424 #21 0x00007f4f3530b1ae in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204 #22 0x00007f4f34d3a38f in QEventLoop::processEvents (this=this@entry=0x7fff54bdd810, flags=...) at kernel/qeventloop.cpp:149 #23 0x00007f4f34d3a618 in QEventLoop::exec (this=0x7fff54bdd810, flags=...) at kernel/qeventloop.cpp:204 #24 0x00007f4f364b1203 in KJob::exec (this=this@entry=0xc5f240) at ../../kdecore/jobs/kjob.cpp:210 #25 0x00007f4f35e2ee28 in KMKernel::cleanup (this=this@entry=0x7fff54bddc20) at ../../kmail/kmkernel.cpp:1323 #26 0x0000000000402c9c in main (argc=<optimized out>, argv=<optimized out>) at ../../kmail/main.cpp:148 Reported using DrKonqi
*** This bug has been marked as a duplicate of bug 320097 ***
Git commit 9b7abb202407bc42e3f711aa0f51a33ede80a3bc by Simeon Bird. Committed on 06/06/2013 at 01:22. Pushed by sbird into branch 'master'. Resource: Null guards for m_data It is possible, during shutdown, for m_data to be null briefly (see ResourceManager::cleanupResources). If a property were accessed during this time, we could crash. The patch checks whether m_data is null in various functions, and returns empty items if so. Related: bug 320097 REVIEW: 110877 M +57 -14 libnepomukcore/resource/resource.cpp http://commits.kde.org/nepomuk-core/9b7abb202407bc42e3f711aa0f51a33ede80a3bc