Application: telepathy-kde-contactlist (0.1) KDE Platform Version: 4.6.80 (4.7 Beta1) "release 2" Qt Version: 4.8.0 Operating System: Linux 2.6.39-2-desktop x86_64 Distribution: "openSUSE 12.1 Milestone 1 (x86_64)" -- Information about the crash: start the contact list... login to some account... expand some groups... then toggle and show/hide groups... and voila la crash... The crash can be reproduced every time. -- Backtrace: Application: Telepathy KDE Contact List (telepathy-kde-contactlist), signal: Segmentation fault [Current thread is 1 (Thread 0x7f920b3ba760 (LWP 17265))] Thread 3 (Thread 0x7f91fc4dd700 (LWP 17266)): #0 0x00007f9205f27c7e in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0 #1 0x00007f920934e77f in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/libQtCore.so.4 #2 0x00007f9209341c8f in ?? () from /usr/lib64/libQtCore.so.4 #3 0x00007f920934e30b in ?? () from /usr/lib64/libQtCore.so.4 #4 0x00007f9205f23cb9 in start_thread () from /lib64/libpthread.so.0 #5 0x00007f920807234d in clone () from /lib64/libc.so.6 Thread 2 (Thread 0x7f91fa4dc700 (LWP 17267)): #0 0x00007f9205f27c7e in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0 #1 0x00007f920934e77f in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/libQtCore.so.4 #2 0x00007f9209341c8f in ?? () from /usr/lib64/libQtCore.so.4 #3 0x00007f920934e30b in ?? () from /usr/lib64/libQtCore.so.4 #4 0x00007f9205f23cb9 in start_thread () from /lib64/libpthread.so.0 #5 0x00007f920807234d in clone () from /lib64/libc.so.6 Thread 1 (Thread 0x7f920b3ba760 (LWP 17265)): [KCrash Handler] #6 TreeNode::parent (this=0x51) at /usr/src/debug/telepathy-contact-list-0.1git.1308435011/tree-node.cpp:92 #7 0x0000000000424fd6 in AccountsModel::parent (this=0x940590, index=<optimized out>) at /usr/src/debug/telepathy-contact-list-0.1git.1308435011/accounts-model.cpp:287 #8 0x00007f9208d880b3 in ?? () from /usr/lib64/libQtGui.so.4 #9 0x00007f9208d88859 in ?? () from /usr/lib64/libQtGui.so.4 #10 0x00007f9208d895f6 in QSortFilterProxyModel::setSourceModel(QAbstractItemModel*) () from /usr/lib64/libQtGui.so.4 #11 0x00007f920945e371 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib64/libQtCore.so.4 #12 0x00007f92087fba12 in QAction::triggered(bool) () from /usr/lib64/libQtGui.so.4 #13 0x00007f92087fbbff in QAction::activate(QAction::ActionEvent) () from /usr/lib64/libQtGui.so.4 #14 0x00007f9208baa7ba in ?? () from /usr/lib64/libQtGui.so.4 #15 0x00007f9208baaa6c in QAbstractButton::mouseReleaseEvent(QMouseEvent*) () from /usr/lib64/libQtGui.so.4 #16 0x00007f9208c678ba in QToolButton::mouseReleaseEvent(QMouseEvent*) () from /usr/lib64/libQtGui.so.4 #17 0x00007f9208852494 in QWidget::event(QEvent*) () from /usr/lib64/libQtGui.so.4 #18 0x00007f9208801e54 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4 #19 0x00007f92088075b3 in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4 #20 0x00007f920a836996 in KApplication::notify(QObject*, QEvent*) () from /usr/lib64/libkdeui.so.5 #21 0x00007f920944a85c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/libQtCore.so.4 #22 0x00007f9208802e22 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () from /usr/lib64/libQtGui.so.4 #23 0x00007f920887e4c5 in ?? () from /usr/lib64/libQtGui.so.4 #24 0x00007f920887d38a in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib64/libQtGui.so.4 #25 0x00007f92088a4dd2 in ?? () from /usr/lib64/libQtGui.so.4 #26 0x00007f9203b022ad in g_main_context_dispatch () from /lib64/libglib-2.0.so.0 #27 0x00007f9203b02a88 in ?? () from /lib64/libglib-2.0.so.0 #28 0x00007f9203b02d19 in g_main_context_iteration () from /lib64/libglib-2.0.so.0 #29 0x00007f92094790ff in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4 #30 0x00007f92088a4a5e in ?? () from /usr/lib64/libQtGui.so.4 #31 0x00007f9209449642 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4 #32 0x00007f9209449897 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4 #33 0x00007f920944deb7 in QCoreApplication::exec() () from /usr/lib64/libQtCore.so.4 #34 0x000000000041804e in main (argc=1, argv=0x7fffc65338d8) at /usr/src/debug/telepathy-contact-list-0.1git.1308435011/main.cpp:60 Reported using DrKonqi
Crap! I removed some code recently which was marked as "working round a crash" when doing exactly what you just did. However adding that code back in is cheating. So let's get to the bottom of this. Alin: Does it crash every time? Task for someone: Identify every instance of TreeNode::parent() where the pointer is not checked before usage. Add a Q_ASSERT. Then we'll know exactly who is causing this.
Alin: Oops, you said it happens every time. Ignore that question. Also try and build/run debug versions if possible.
This is now fixed. Please re-open if you still see this.