Bug 286759

Summary: plasma-desktop crash on activity change
Product: [Unmaintained] plasma4 Reporter: Christian Holzberger <ch>
Component: widget-taskbarAssignee: Plasma Bugs List <plasma-bugs>
Status: RESOLVED FIXED    
Severity: crash CC: asraniel, davidetestoni95
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: New crash information added by DrKonqi
New crash information added by DrKonqi
New crash information added by DrKonqi

Description Christian Holzberger 2011-11-16 07:51:10 UTC
Application: plasma-desktop (0.4)
KDE Platform Version: 4.7.3 (4.7.3)
Qt Version: 4.7.4
Operating System: Linux 3.0.0-12-generic x86_64
Distribution: Ubuntu 11.10

-- Information about the crash:
- What I was doing when the application crashed:

switching from one (empty) aktivity to one with kmail on it.

The crash can be reproduced some of the time.

-- Backtrace:
Application: Plasma Desktop Shell (plasma-desktop), signal: Segmentation fault
[Current thread is 1 (Thread 0x7f25be28b7a0 (LWP 2869))]

Thread 8 (Thread 0x7f25a6ae3700 (LWP 2976)):
#0  0x0000003593ed5773 in __GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=<optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x0000003595644f68 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x0000003595645792 in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f25a75c1516 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#4  0x000000359566a2b6 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x0000003594607efc in start_thread (arg=0x7f25a6ae3700) at pthread_create.c:304
#6  0x0000003593ee189d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()

Thread 7 (Thread 0x7f259953c700 (LWP 3004)):
#0  0x0000003593ed5773 in __GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=<optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x0000003595644f68 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x0000003595645429 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x0000003592d97f3e in QEventDispatcherGlib::processEvents (this=0x7f25a000e470, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#4  0x0000003592d6bcf2 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#5  0x0000003592d6bef7 in QEventLoop::exec (this=0x7f259953bdb0, flags=...) at kernel/qeventloop.cpp:201
#6  0x0000003592c8327f in QThread::exec (this=<optimized out>) at thread/qthread.cpp:498
#7  0x0000003592d4ecbf in QInotifyFileSystemWatcherEngine::run (this=0x376af70) at io/qfilesystemwatcher_inotify.cpp:248
#8  0x0000003592c85d05 in QThreadPrivate::start (arg=0x376af70) at thread/qthread_unix.cpp:331
#9  0x0000003594607efc in start_thread (arg=0x7f259953c700) at pthread_create.c:304
#10 0x0000003593ee189d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()

Thread 6 (Thread 0x7f2597df3700 (LWP 9919)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x0000003592c861ab in wait (time=18446744073709551615, this=0x3a7f0c0) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x3a610e0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:160
#3  0x00000035a4409864 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x3ae68b0, th=0x6083f50) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x00000035a440be0b in ThreadWeaver::WorkingHardState::applyForWork (this=0x3a61140, th=0x6083f50) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x00000035a440accf in ThreadWeaver::ThreadRunHelper::run (this=0x7f2597df2e00, parent=0x3ae68b0, th=0x6083f50) at ../../../threadweaver/Weaver/Thread.cpp:87
#6  0x00000035a440ad5b in ThreadWeaver::Thread::run (this=0x6083f50) at ../../../threadweaver/Weaver/Thread.cpp:142
#7  0x0000003592c85d05 in QThreadPrivate::start (arg=0x6083f50) at thread/qthread_unix.cpp:331
#8  0x0000003594607efc in start_thread (arg=0x7f2597df3700) at pthread_create.c:304
#9  0x0000003593ee189d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#10 0x0000000000000000 in ?? ()

Thread 5 (Thread 0x7f25a72e4700 (LWP 9920)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x0000003592c861ab in wait (time=18446744073709551615, this=0x3a7f0c0) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x3a610e0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:160
#3  0x00000035a4409864 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x3ae68b0, th=0x49a7a60) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x00000035a440be0b in ThreadWeaver::WorkingHardState::applyForWork (this=0x3a61140, th=0x49a7a60) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x00000035a440accf in ThreadWeaver::ThreadRunHelper::run (this=0x7f25a72e3e00, parent=0x3ae68b0, th=0x49a7a60) at ../../../threadweaver/Weaver/Thread.cpp:87
#6  0x00000035a440ad5b in ThreadWeaver::Thread::run (this=0x49a7a60) at ../../../threadweaver/Weaver/Thread.cpp:142
#7  0x0000003592c85d05 in QThreadPrivate::start (arg=0x49a7a60) at thread/qthread_unix.cpp:331
#8  0x0000003594607efc in start_thread (arg=0x7f25a72e4700) at pthread_create.c:304
#9  0x0000003593ee189d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#10 0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7f258d752700 (LWP 9921)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x0000003592c861ab in wait (time=18446744073709551615, this=0x3a7f0c0) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x3a610e0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:160
#3  0x00000035a4409864 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x3ae68b0, th=0x7f25a0040c00) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x00000035a440be0b in ThreadWeaver::WorkingHardState::applyForWork (this=0x3a61140, th=0x7f25a0040c00) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x00000035a440accf in ThreadWeaver::ThreadRunHelper::run (this=0x7f258d751e00, parent=0x3ae68b0, th=0x7f25a0040c00) at ../../../threadweaver/Weaver/Thread.cpp:87
#6  0x00000035a440ad5b in ThreadWeaver::Thread::run (this=0x7f25a0040c00) at ../../../threadweaver/Weaver/Thread.cpp:142
#7  0x0000003592c85d05 in QThreadPrivate::start (arg=0x7f25a0040c00) at thread/qthread_unix.cpp:331
#8  0x0000003594607efc in start_thread (arg=0x7f258d752700) at pthread_create.c:304
#9  0x0000003593ee189d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#10 0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7f258cf51700 (LWP 9922)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x0000003592c861ab in wait (time=18446744073709551615, this=0x3a7f0c0) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x3a610e0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:160
#3  0x00000035a4409864 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x3ae68b0, th=0x49cf3e0) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x00000035a440be0b in ThreadWeaver::WorkingHardState::applyForWork (this=0x3a61140, th=0x49cf3e0) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x00000035a440accf in ThreadWeaver::ThreadRunHelper::run (this=0x7f258cf50e00, parent=0x3ae68b0, th=0x49cf3e0) at ../../../threadweaver/Weaver/Thread.cpp:87
#6  0x00000035a440ad5b in ThreadWeaver::Thread::run (this=0x49cf3e0) at ../../../threadweaver/Weaver/Thread.cpp:142
#7  0x0000003592c85d05 in QThreadPrivate::start (arg=0x49cf3e0) at thread/qthread_unix.cpp:331
#8  0x0000003594607efc in start_thread (arg=0x7f258cf51700) at pthread_create.c:304
#9  0x0000003593ee189d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#10 0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7f2587fff700 (LWP 9923)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x0000003592c861ab in wait (time=18446744073709551615, this=0x3a7f0c0) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x3a610e0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:160
#3  0x00000035a4409864 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x3ae68b0, th=0x61e6880) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x00000035a440be0b in ThreadWeaver::WorkingHardState::applyForWork (this=0x3a61140, th=0x61e6880) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x00000035a440accf in ThreadWeaver::ThreadRunHelper::run (this=0x7f2587ffee00, parent=0x3ae68b0, th=0x61e6880) at ../../../threadweaver/Weaver/Thread.cpp:87
#6  0x00000035a440ad5b in ThreadWeaver::Thread::run (this=0x61e6880) at ../../../threadweaver/Weaver/Thread.cpp:142
#7  0x0000003592c85d05 in QThreadPrivate::start (arg=0x61e6880) at thread/qthread_unix.cpp:331
#8  0x0000003594607efc in start_thread (arg=0x7f2587fff700) at pthread_create.c:304
#9  0x0000003593ee189d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#10 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7f25be28b7a0 (LWP 2869)):
[KCrash Handler]
#6  QList (l=..., this=0x7fff3168bf30) at /usr/include/qt4/QtCore/qlist.h:118
#7  QStringList (l=..., this=0x7fff3168bf30) at /usr/include/qt4/QtCore/qstringlist.h:71
#8  TaskManager::Task::activities (this=0x61b25f0) at ../../../libs/taskmanager/task.cpp:681
#9  0x00007f25aaf4f239 in TaskManager::Task::isOnCurrentActivity (this=0x61b25f0) at ../../../libs/taskmanager/task.cpp:671
#10 0x00007f25917acda4 in TaskSource::updateActivity (this=<optimized out>) at ../../../../../plasma/generic/dataengines/tasks/tasksource.cpp:170
#11 0x00007f25917acf4e in TaskSource::qt_metacall (this=0x98b45c0, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff3168c100) at ./tasksource.moc:83
#12 0x0000003592d7feba in QMetaObject::activate (sender=0x429a060, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff3168c100) at kernel/qobject.cpp:3278
#13 0x00007f25aaf596c5 in TaskManager::TaskManager::activityChanged (this=<optimized out>, _t1=<optimized out>) at ./taskmanager.moc:207
#14 0x00007f25aaf5b1dd in TaskManager::TaskManager::qt_metacall (this=0x429a060, _c=QMetaObject::InvokeMetaMethod, _id=12, _a=0x7fff3168c2c0) at ./taskmanager.moc:128
#15 0x0000003592d7feba in QMetaObject::activate (sender=0x44d17d0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff3168c2c0) at kernel/qobject.cpp:3278
#16 0x00000035a640d902 in KActivityConsumer::currentActivityChanged (this=<optimized out>, _t1=<optimized out>) at moc_kactivityconsumer.cpp:126
#17 0x00000035a640dbf5 in KActivityConsumer::qt_metacall (this=0x44d17d0, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0x7fff3168c3e0) at moc_kactivityconsumer.cpp:87
#18 0x0000003592d7feba in QMetaObject::activate (sender=0x1722380, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff3168c3e0) at kernel/qobject.cpp:3278
#19 0x00000035a642df65 in OrgKdeActivityManagerInterface::CurrentActivityChanged (this=<optimized out>, _t1=<optimized out>) at activitymanager_interface.moc:249
#20 0x00000035a642e55a in OrgKdeActivityManagerInterface::qt_metacall (this=0x1722380, _c=QMetaObject::InvokeMetaMethod, _id=6, _a=0x7fff3168cc10) at activitymanager_interface.moc:145
#21 0x00000035a640d9b0 in KActivityManager::qt_metacall (this=0x1722380, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff3168cc10) at moc_kactivitymanager_p.cpp:75
#22 0x000000359d4230e9 in QDBusConnectionPrivate::deliverCall (this=0x1561900, object=0x1722380, msg=..., metaTypes=..., slotIdx=11) at qdbusintegrator.cpp:942
#23 0x000000359d42c38f in QDBusCallDeliveryEvent::placeMetaCall (this=<optimized out>, object=<optimized out>) at qdbusintegrator_p.h:103
#24 0x0000003592d83a5e in QObject::event (this=0x1722380, e=<optimized out>) at kernel/qobject.cpp:1217
#25 0x000000359affc424 in notify_helper (e=0x9d9a860, receiver=0x1722380, this=0x1573a20) at kernel/qapplication.cpp:4486
#26 QApplicationPrivate::notify_helper (this=0x1573a20, receiver=0x1722380, e=0x9d9a860) at kernel/qapplication.cpp:4458
#27 0x000000359b001291 in QApplication::notify (this=0x1556900, receiver=0x1722380, e=0x9d9a860) at kernel/qapplication.cpp:4365
#28 0x000000359fc31126 in KApplication::notify (this=0x1556900, receiver=0x1722380, event=0x9d9a860) at ../../kdeui/kernel/kapplication.cpp:311
#29 0x0000003592d6cafc in QCoreApplication::notifyInternal (this=0x1556900, receiver=0x1722380, event=0x9d9a860) at kernel/qcoreapplication.cpp:787
#30 0x0000003592d7051f in sendEvent (event=0x9d9a860, receiver=0x1722380) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#31 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x14dd430) at kernel/qcoreapplication.cpp:1428
#32 0x0000003592d97a73 in sendPostedEvents () at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#33 postEventSourceDispatch (s=<optimized out>) at kernel/qeventdispatcher_glib.cpp:277
#34 0x0000003595644a5d in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#35 0x0000003595645258 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#36 0x0000003595645429 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#37 0x0000003592d97ed6 in QEventDispatcherGlib::processEvents (this=0x14def40, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:422
#38 0x000000359b0a407e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=<optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#39 0x0000003592d6bcf2 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#40 0x0000003592d6bef7 in QEventLoop::exec (this=0x7fff3168d430, flags=...) at kernel/qeventloop.cpp:201
#41 0x0000003592d70789 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1064
#42 0x00007f25be7781a3 in kdemain (argc=1, argv=0x7fff3168d818) at ../../../../plasma/desktop/shell/main.cpp:120
#43 0x0000003593e2130d in __libc_start_main (main=0x400640 <main(int, char**)>, argc=1, ubp_av=0x7fff3168d818, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fff3168d808) at libc-start.c:226
#44 0x0000000000400671 in _start ()

Reported using DrKonqi
Comment 1 Marco Martin 2011-11-22 12:54:48 UTC
Git commit 45a2df92c7d995cce8202c37e5224c4f46873016 by Marco Martin.
Committed on 22/11/2011 at 13:51.
Pushed by mart into branch 'master'.

disconnect everything when removing a task

when removing a task, the task ptr was deleted, do disconnect any pending signals
BUG:286759

M  +6    -1    plasma/generic/dataengines/tasks/tasksengine.cpp

http://commits.kde.org/kde-workspace/45a2df92c7d995cce8202c37e5224c4f46873016
Comment 2 iltesto 2012-01-14 14:36:50 UTC
Created attachment 67821 [details]
New crash information added by DrKonqi

plasma-desktop (0.4) on KDE Platform 4.7.3 (4.7.3) using Qt 4.7.4

- What I was doing when the application crashed
stavo cambiando attività quando è diventato tutto nero
- Unusual behavior I noticed:

-- Backtrace (Reduced):
#6  QList (l=..., this=0x7fff45cfe900) at /usr/include/qt4/QtCore/qlist.h:118
#7  QStringList (l=..., this=0x7fff45cfe900) at /usr/include/qt4/QtCore/qstringlist.h:71
#8  TaskManager::Task::activities (this=0x371b1e0) at ../../../libs/taskmanager/task.cpp:681
#9  0x00007f622bef2239 in TaskManager::Task::isOnCurrentActivity (this=0x371b1e0) at ../../../libs/taskmanager/task.cpp:671
#10 0x00007f62145afda4 in TaskSource::updateActivity (this=<optimized out>) at ../../../../../plasma/generic/dataengines/tasks/tasksource.cpp:170
Comment 3 iltesto 2012-01-14 14:36:52 UTC
Created attachment 67822 [details]
New crash information added by DrKonqi

plasma-desktop (0.4) on KDE Platform 4.7.3 (4.7.3) using Qt 4.7.4

- What I was doing when the application crashed
stavo cambiando attività quando è diventato tutto nero
- Unusual behavior I noticed:

-- Backtrace (Reduced):
#6  QList (l=..., this=0x7fff45cfe900) at /usr/include/qt4/QtCore/qlist.h:118
#7  QStringList (l=..., this=0x7fff45cfe900) at /usr/include/qt4/QtCore/qstringlist.h:71
#8  TaskManager::Task::activities (this=0x371b1e0) at ../../../libs/taskmanager/task.cpp:681
#9  0x00007f622bef2239 in TaskManager::Task::isOnCurrentActivity (this=0x371b1e0) at ../../../libs/taskmanager/task.cpp:671
#10 0x00007f62145afda4 in TaskSource::updateActivity (this=<optimized out>) at ../../../../../plasma/generic/dataengines/tasks/tasksource.cpp:170
Comment 4 iltesto 2012-01-14 14:36:54 UTC
Created attachment 67823 [details]
New crash information added by DrKonqi

plasma-desktop (0.4) on KDE Platform 4.7.3 (4.7.3) using Qt 4.7.4

- What I was doing when the application crashed
stavo cambiando attività quando è diventato tutto nero
- Unusual behavior I noticed:

-- Backtrace (Reduced):
#6  QList (l=..., this=0x7fff45cfe900) at /usr/include/qt4/QtCore/qlist.h:118
#7  QStringList (l=..., this=0x7fff45cfe900) at /usr/include/qt4/QtCore/qstringlist.h:71
#8  TaskManager::Task::activities (this=0x371b1e0) at ../../../libs/taskmanager/task.cpp:681
#9  0x00007f622bef2239 in TaskManager::Task::isOnCurrentActivity (this=0x371b1e0) at ../../../libs/taskmanager/task.cpp:671
#10 0x00007f62145afda4 in TaskSource::updateActivity (this=<optimized out>) at ../../../../../plasma/generic/dataengines/tasks/tasksource.cpp:170