Application: plasma-desktop (0.4) KDE Platform Version: 4.8.00 (4.8.0) (Compiled from sources) Qt Version: 4.8.0 Operating System: Linux 3.0.0-14-generic x86_64 Distribution: Ubuntu 11.10 -- Information about the crash: - What I was doing when the application crashed: The weird thing is, that I removed the chat plasmoid from my panel few hours ago. Now when I started chat with someone who was in the plasmoid, plasma went down. -- Backtrace: Application: Plasma Desktop Shell (plasma-desktop), signal: Segmentation fault [Current thread is 1 (Thread 0x7fbd5a8917c0 (LWP 28064))] Thread 6 (Thread 0x7fbd347b3700 (LWP 28065)): #0 0x00007fbd5a15c773 in __GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=<optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:87 #1 0x00007fbd4c8e9f68 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #2 0x00007fbd4c8ea429 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #3 0x00007fbd56929d2a in QEventDispatcherGlib::processEvents (this=0x13c8ae0, flags=...) at kernel/qeventdispatcher_glib.cpp:426 #4 0x00007fbd568eb3e4 in QEventLoop::processEvents (this=0x7fbd347b2c60, flags=...) at kernel/qeventloop.cpp:149 #5 0x00007fbd568eb56e in QEventLoop::exec (this=0x7fbd347b2c60, flags=...) at kernel/qeventloop.cpp:204 #6 0x00007fbd567b82a7 in QThread::exec (this=0x13c8750) at thread/qthread.cpp:501 #7 0x00007fbd568c6837 in QInotifyFileSystemWatcherEngine::run (this=0x13c8750) at io/qfilesystemwatcher_inotify.cpp:248 #8 0x00007fbd567babd4 in QThreadPrivate::start (arg=0x13c8750) at thread/qthread_unix.cpp:298 #9 0x00007fbd4a67756c in ?? () from /usr/lib/nvidia-current-updates/libGL.so.1 #10 0x00007fbd56519efc in start_thread (arg=0x7fbd347b3700) at pthread_create.c:304 #11 0x00007fbd5a16889d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #12 0x0000000000000000 in ?? () Thread 5 (Thread 0x7fbd2bfff700 (LWP 30092)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162 #1 0x00007fbd567bc1cb in QWaitConditionPrivate::wait (this=0x1450d60, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:86 #2 0x00007fbd567bbf75 in QWaitCondition::wait (this=0x14b51d8, mutex=0x14104d0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:158 #3 0x00007fbd51ff29fe in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x14b51b0, th=0x2f5f490) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/WeaverImpl.cpp:365 #4 0x00007fbd51ff6d65 in ThreadWeaver::WorkingHardState::waitForAvailableJob (this=0x1419f00, th=0x2f5f490) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/WorkingHardState.cpp:80 #5 0x00007fbd51ff297c in ThreadWeaver::WeaverImpl::waitForAvailableJob (this=0x14b51b0, th=0x2f5f490) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/WeaverImpl.cpp:356 #6 0x00007fbd51ff6d07 in ThreadWeaver::WorkingHardState::applyForWork (this=0x1419f00, th=0x2f5f490) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/WorkingHardState.cpp:71 #7 0x00007fbd51ff2943 in ThreadWeaver::WeaverImpl::applyForWork (this=0x14b51b0, th=0x2f5f490, previous=0x3d07f90) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/WeaverImpl.cpp:351 #8 0x00007fbd51ff46df in ThreadWeaver::ThreadRunHelper::run (this=0x7fbd2bffecc0, parent=0x14b51b0, th=0x2f5f490) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/Thread.cpp:87 #9 0x00007fbd51ff498e in ThreadWeaver::Thread::run (this=0x2f5f490) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/Thread.cpp:142 #10 0x00007fbd567babd4 in QThreadPrivate::start (arg=0x2f5f490) at thread/qthread_unix.cpp:298 #11 0x00007fbd4a67756c in ?? () from /usr/lib/nvidia-current-updates/libGL.so.1 #12 0x00007fbd56519efc in start_thread (arg=0x7fbd2bfff700) at pthread_create.c:304 #13 0x00007fbd5a16889d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #14 0x0000000000000000 in ?? () Thread 4 (Thread 0x7fbd2af24700 (LWP 30093)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162 #1 0x00007fbd567bc1cb in QWaitConditionPrivate::wait (this=0x1450d60, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:86 #2 0x00007fbd567bbf75 in QWaitCondition::wait (this=0x14b51d8, mutex=0x14104d0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:158 #3 0x00007fbd51ff29fe in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x14b51b0, th=0x3ee9390) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/WeaverImpl.cpp:365 #4 0x00007fbd51ff6d65 in ThreadWeaver::WorkingHardState::waitForAvailableJob (this=0x1419f00, th=0x3ee9390) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/WorkingHardState.cpp:80 #5 0x00007fbd51ff297c in ThreadWeaver::WeaverImpl::waitForAvailableJob (this=0x14b51b0, th=0x3ee9390) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/WeaverImpl.cpp:356 #6 0x00007fbd51ff6d07 in ThreadWeaver::WorkingHardState::applyForWork (this=0x1419f00, th=0x3ee9390) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/WorkingHardState.cpp:71 #7 0x00007fbd51ff2943 in ThreadWeaver::WeaverImpl::applyForWork (this=0x14b51b0, th=0x3ee9390, previous=0x37be550) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/WeaverImpl.cpp:351 #8 0x00007fbd51ff46df in ThreadWeaver::ThreadRunHelper::run (this=0x7fbd2af23cc0, parent=0x14b51b0, th=0x3ee9390) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/Thread.cpp:87 #9 0x00007fbd51ff498e in ThreadWeaver::Thread::run (this=0x3ee9390) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/Thread.cpp:142 #10 0x00007fbd567babd4 in QThreadPrivate::start (arg=0x3ee9390) at thread/qthread_unix.cpp:298 #11 0x00007fbd4a67756c in ?? () from /usr/lib/nvidia-current-updates/libGL.so.1 #12 0x00007fbd56519efc in start_thread (arg=0x7fbd2af24700) at pthread_create.c:304 #13 0x00007fbd5a16889d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #14 0x0000000000000000 in ?? () Thread 3 (Thread 0x7fbd27f06700 (LWP 30094)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162 #1 0x00007fbd567bc1cb in QWaitConditionPrivate::wait (this=0x1450d60, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:86 #2 0x00007fbd567bbf75 in QWaitCondition::wait (this=0x14b51d8, mutex=0x14104d0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:158 #3 0x00007fbd51ff29fe in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x14b51b0, th=0x7fbd2c003c00) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/WeaverImpl.cpp:365 #4 0x00007fbd51ff6d65 in ThreadWeaver::WorkingHardState::waitForAvailableJob (this=0x1419f00, th=0x7fbd2c003c00) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/WorkingHardState.cpp:80 #5 0x00007fbd51ff297c in ThreadWeaver::WeaverImpl::waitForAvailableJob (this=0x14b51b0, th=0x7fbd2c003c00) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/WeaverImpl.cpp:356 #6 0x00007fbd51ff6d07 in ThreadWeaver::WorkingHardState::applyForWork (this=0x1419f00, th=0x7fbd2c003c00) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/WorkingHardState.cpp:71 #7 0x00007fbd51ff2943 in ThreadWeaver::WeaverImpl::applyForWork (this=0x14b51b0, th=0x7fbd2c003c00, previous=0x0) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/WeaverImpl.cpp:351 #8 0x00007fbd51ff6d32 in ThreadWeaver::WorkingHardState::applyForWork (this=0x1419f00, th=0x7fbd2c003c00) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/WorkingHardState.cpp:74 #9 0x00007fbd51ff2943 in ThreadWeaver::WeaverImpl::applyForWork (this=0x14b51b0, th=0x7fbd2c003c00, previous=0x3ee9310) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/WeaverImpl.cpp:351 #10 0x00007fbd51ff46df in ThreadWeaver::ThreadRunHelper::run (this=0x7fbd27f05cc0, parent=0x14b51b0, th=0x7fbd2c003c00) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/Thread.cpp:87 #11 0x00007fbd51ff498e in ThreadWeaver::Thread::run (this=0x7fbd2c003c00) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/Thread.cpp:142 #12 0x00007fbd567babd4 in QThreadPrivate::start (arg=0x7fbd2c003c00) at thread/qthread_unix.cpp:298 #13 0x00007fbd4a67756c in ?? () from /usr/lib/nvidia-current-updates/libGL.so.1 #14 0x00007fbd56519efc in start_thread (arg=0x7fbd27f06700) at pthread_create.c:304 #15 0x00007fbd5a16889d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #16 0x0000000000000000 in ?? () Thread 2 (Thread 0x7fbd27705700 (LWP 30095)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162 #1 0x00007fbd567bc1cb in QWaitConditionPrivate::wait (this=0x1450d60, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:86 #2 0x00007fbd567bbf75 in QWaitCondition::wait (this=0x14b51d8, mutex=0x14104d0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:158 #3 0x00007fbd51ff29fe in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x14b51b0, th=0x2438710) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/WeaverImpl.cpp:365 #4 0x00007fbd51ff6d65 in ThreadWeaver::WorkingHardState::waitForAvailableJob (this=0x1419f00, th=0x2438710) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/WorkingHardState.cpp:80 #5 0x00007fbd51ff297c in ThreadWeaver::WeaverImpl::waitForAvailableJob (this=0x14b51b0, th=0x2438710) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/WeaverImpl.cpp:356 #6 0x00007fbd51ff6d07 in ThreadWeaver::WorkingHardState::applyForWork (this=0x1419f00, th=0x2438710) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/WorkingHardState.cpp:71 #7 0x00007fbd51ff2943 in ThreadWeaver::WeaverImpl::applyForWork (this=0x14b51b0, th=0x2438710, previous=0x0) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/WeaverImpl.cpp:351 #8 0x00007fbd51ff6d32 in ThreadWeaver::WorkingHardState::applyForWork (this=0x1419f00, th=0x2438710) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/WorkingHardState.cpp:74 #9 0x00007fbd51ff2943 in ThreadWeaver::WeaverImpl::applyForWork (this=0x14b51b0, th=0x2438710, previous=0x206c480) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/WeaverImpl.cpp:351 #10 0x00007fbd51ff46df in ThreadWeaver::ThreadRunHelper::run (this=0x7fbd27704cc0, parent=0x14b51b0, th=0x2438710) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/Thread.cpp:87 #11 0x00007fbd51ff498e in ThreadWeaver::Thread::run (this=0x2438710) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/threadweaver/Weaver/Thread.cpp:142 #12 0x00007fbd567babd4 in QThreadPrivate::start (arg=0x2438710) at thread/qthread_unix.cpp:298 #13 0x00007fbd4a67756c in ?? () from /usr/lib/nvidia-current-updates/libGL.so.1 #14 0x00007fbd56519efc in start_thread (arg=0x7fbd27705700) at pthread_create.c:304 #15 0x00007fbd5a16889d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #16 0x0000000000000000 in ?? () Thread 1 (Thread 0x7fbd5a8917c0 (LWP 28064)): [KCrash Handler] #6 0x00007fbd5690bb61 in QMetaObject::activate (sender=0x23e5a30, m=0x7fbd291be080, local_signal_index=0, argv=0x7fffeb53c230) at kernel/qobject.cpp:3480 #7 0x00007fbd28faa3b3 in TelepathyTextObserver::newConversation (this=0x23e5a30, _t1=0x26f46d0) at /home/mck182/Work/Telepathy/ktp-text-ui/build/plasmoid/declarative-plugin/moc_telepathy-text-observer.cpp:99 #8 0x00007fbd28fb108e in TelepathyTextObserver::ConversationClientObserver::observeChannels (this=0x3523950, context=..., account=..., connection=..., channels=..., dispatchOperation=..., requestsSatisfied=..., observerInfo=...) at /home/mck182/Work/Telepathy/ktp-text-ui/plasmoid/declarative-plugin/telepathy-text-observer.cpp:64 #9 0x00007fbd3155353f in Tp::ClientObserverAdaptor::onReadyOpFinished (this=0x35234a0, op=<optimized out>) at /home/mck182/Work/Telepathy/telepathy-qt4/TelepathyQt/client-registrar.cpp:253 #10 0x00007fbd31556e19 in Tp::ClientObserverAdaptor::qt_metacall (this=0x35234a0, _c=QMetaObject::InvokeMetaMethod, _id=1, _a=0x7fffeb53c5e0) at /home/mck182/Work/Telepathy/telepathy-qt4/build/TelepathyQt/_gen/client-registrar-internal.moc.hpp:186 #11 0x00007fbd568f5fd8 in QMetaObject::metacall (object=0x35234a0, cl=QMetaObject::InvokeMetaMethod, idx=5, argv=0x7fffeb53c5e0) at kernel/qmetaobject.cpp:245 #12 0x00007fbd5690bfc9 in QMetaObject::activate (sender=0x2918ad0, m=0x7fbd319b3c20, local_signal_index=0, argv=0x7fffeb53c5e0) at kernel/qobject.cpp:3566 #13 0x00007fbd3160deef in Tp::PendingOperation::finished (this=<optimized out>, _t1=0x2918ad0) at /home/mck182/Work/Telepathy/telepathy-qt4/build/TelepathyQt/_gen/pending-operation.moc.hpp:98 #14 0x00007fbd3160df31 in Tp::PendingOperation::emitFinished (this=0x2918ad0) at /home/mck182/Work/Telepathy/telepathy-qt4/TelepathyQt/pending-operation.cpp:123 #15 0x00007fbd3160ebac in Tp::PendingOperation::qt_metacall (this=0x2918ad0, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x3953870) at /home/mck182/Work/Telepathy/telepathy-qt4/build/TelepathyQt/_gen/pending-operation.moc.hpp:86 #16 0x00007fbd3160ebf0 in Tp::PendingComposite::qt_metacall (this=0x2918ad0, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x3953870) at /home/mck182/Work/Telepathy/telepathy-qt4/build/TelepathyQt/_gen/simple-pending-operations.moc.hpp:225 #17 0x00007fbd568f5fd8 in QMetaObject::metacall (object=0x2918ad0, cl=QMetaObject::InvokeMetaMethod, idx=8, argv=0x3953870) at kernel/qmetaobject.cpp:245 #18 0x00007fbd5690595a in QMetaCallEvent::placeMetaCall (this=0x3546a10, object=0x2918ad0) at kernel/qobject.cpp:527 #19 0x00007fbd56906b5f in QObject::event (this=0x2918ad0, e=0x3546a10) at kernel/qobject.cpp:1195 #20 0x00007fbd55764a9a in QApplicationPrivate::notify_helper (this=0xa7d200, receiver=0x2918ad0, e=0x3546a10) at kernel/qapplication.cpp:4554 #21 0x00007fbd557620b8 in QApplication::notify (this=0xa76460, receiver=0x2918ad0, e=0x3546a10) at kernel/qapplication.cpp:3936 #22 0x00007fbd576e290f in KApplication::notify (this=0xa76460, receiver=0x2918ad0, event=0x3546a10) at /build/buildd/project-neon-kdelibs-2+git20120130+r92428/kdeui/kernel/kapplication.cpp:311 #23 0x00007fbd568edb1a in QCoreApplication::notifyInternal (this=0xa76460, receiver=0x2918ad0, event=0x3546a10) at kernel/qcoreapplication.cpp:876 #24 0x00007fbd568f168d in QCoreApplication::sendEvent (receiver=0x2918ad0, event=0x3546a10) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231 #25 0x00007fbd568eeb2e in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x9941f0) at kernel/qcoreapplication.cpp:1500 #26 0x00007fbd568ee74f in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1393 #27 0x00007fbd5692a457 in QCoreApplication::sendPostedEvents () at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:236 #28 0x00007fbd56929430 in postEventSourceDispatch (s=0xa80b70) at kernel/qeventdispatcher_glib.cpp:279 #29 0x00007fbd4c8e9a5d in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #30 0x00007fbd4c8ea258 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #31 0x00007fbd4c8ea429 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #32 0x00007fbd56929d07 in QEventDispatcherGlib::processEvents (this=0x995ad0, flags=...) at kernel/qeventdispatcher_glib.cpp:424 #33 0x00007fbd5583d128 in QGuiEventDispatcherGlib::processEvents (this=0x995ad0, flags=...) at kernel/qguieventdispatcher_glib.cpp:204 #34 0x00007fbd568eb3e4 in QEventLoop::processEvents (this=0x7fffeb53d2e0, flags=...) at kernel/qeventloop.cpp:149 #35 0x00007fbd568eb56e in QEventLoop::exec (this=0x7fffeb53d2e0, flags=...) at kernel/qeventloop.cpp:204 #36 0x00007fbd568ee19a in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1148 #37 0x00007fbd55761ca2 in QApplication::exec () at kernel/qapplication.cpp:3815 #38 0x00007fbd5a46c49f in kdemain (argc=1, argv=0x7fffeb53d738) at /build/buildd/project-neon-kde-workspace-2+git20120125+r45921/plasma/desktop/shell/main.cpp:120 #39 0x0000000000400796 in main (argc=1, argv=0x7fffeb53d738) at /build/buildd/project-neon-kde-workspace-2+git20120125+r45921/obj-x86_64-linux-gnu/plasma/desktop/shell/plasma-desktop_dummy.cpp:3 Reported using DrKonqi
The weird thing is, that I removed the chat plasmoid from my panel few hours ago. Now when I started chat with someone who was in the plasmoid, plasma went down. I think that's actually key to this. If this plasmoid is started, you'll create all the telepathy objects I think ConversationClientObserver is "leaked", as the observer hold a reference to the clientRegistrar which holds a refernece ot the observer. So when you close the plasmoid these both stick around. When you delete the plasmoid TelepathyTextObserver is null, and the ConversationClientObserver::m_parent is now a dead pointer. Fixes needed: 1) fix the circular dependency in the ConversationClientObserver (move registrar to TelepathyTextObserver) 2) use a QWeakPointer on m_parent (and check before using) 3) rename one of these classes so it's not really really confusing.
Damn, I didn't notice this bug was for the plasmoid till now. I did recall it had an issue where if you add the plasmoid to the desktop, then delete and re-add, it complains that KDE.TextUi.ConversationWatcher is already registered. So I suspected that they might not be getting deleted properly, but I didn't peruse at the time because that class was going to get completely overhauled soon anyway. Plus I tested this mostly in plasmoidviewer so it didn't really come up much.
Created attachment 68509 [details] Move registrar from ConversationClientObserver to TelepathyTextObserver Right, I did as David suggested. Martin, can you please check if this patch fixes it?
Right, that seemed to do it. I'm closing this bug.