Bug 283774 - Plasma crashes when I expand grouped windows [@ TaskItemLayout::remove]
Summary: Plasma crashes when I expand grouped windows [@ TaskItemLayout::remove]
Status: RESOLVED UNMAINTAINED
Alias: None
Product: plasma4
Classification: Plasma
Component: general (show other bugs)
Version: 4.8.4
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Plasma Bugs List
URL:
Keywords: regression
Depends on:
Blocks:
 
Reported: 2011-10-11 10:00 UTC by jmaspons
Modified: 2013-11-22 00:19 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
New crash information added by DrKonqi (19.53 KB, text/plain)
2012-09-03 13:13 UTC, Nico Roeser
Details
crashdump for exanding grouped windows on 4.11 (14.98 KB, text/plain)
2013-11-04 10:12 UTC, Dennis Knorr
Details

Note You need to log in before you can comment on or make changes to this bug.
Description jmaspons 2011-10-11 10:00:17 UTC
Application: plasma-desktop (0.4)
KDE Platform Version: 4.6.5 (4.6.5)
Qt Version: 4.7.2
Operating System: Linux 2.6.38-11-generic i686
Distribution: Ubuntu 11.04

-- Information about the crash:
Plasma crash when I expand grouped windows and the task manager change from 1 to 2 rows. It seems that it only happens when widgets aren't locked.

The crash can be reproduced every time.

-- Backtrace:
Application: Àrea de treball de l'escriptori Plasma (plasma-desktop), signal: Segmentation fault
[Current thread is 1 (Thread 0xb7853ad0 (LWP 1824))]

Thread 4 (Thread 0xaec18b70 (LWP 1892)):
#0  0x01eb47a4 in __pthread_mutex_unlock_usercnt (mutex=0x8d7786c, decr=1) at pthread_mutex_unlock.c:52
#1  0x008bc656 in pthread_mutex_unlock (mutex=0x8d7786c) at forward.c:184
#2  0x06b1cf24 in g_main_context_prepare () from /lib/i386-linux-gnu/libglib-2.0.so.0
#3  0x06b1de63 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#4  0x06b1e524 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#5  0x02fa6577 in QEventDispatcherGlib::processEvents (this=0x8d777e8, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#6  0x02f78289 in QEventLoop::processEvents (this=0xaec18280, flags=...) at kernel/qeventloop.cpp:149
#7  0x02f78522 in QEventLoop::exec (this=0xaec18280, flags=...) at kernel/qeventloop.cpp:201
#8  0x02e822a0 in QThread::exec (this=0x8c2e8b8) at thread/qthread.cpp:492
#9  0x02f59fdb in QInotifyFileSystemWatcherEngine::run (this=0x8c2e8b8) at io/qfilesystemwatcher_inotify.cpp:248
#10 0x02e84da2 in QThreadPrivate::start (arg=0x8c2e8b8) at thread/qthread_unix.cpp:320
#11 0x01eb0e99 in start_thread (arg=0xaec18b70) at pthread_create.c:304
#12 0x008ae73e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 3 (Thread 0xae416b70 (LWP 1893)):
#0  0x01eb47a4 in __pthread_mutex_unlock_usercnt (mutex=0x8d39fac, decr=1) at pthread_mutex_unlock.c:52
#1  0x008bc656 in pthread_mutex_unlock (mutex=0x8d39fac) at forward.c:184
#2  0x06b1c5e6 in g_main_context_acquire () from /lib/i386-linux-gnu/libglib-2.0.so.0
#3  0x06b1ddde in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#4  0x06b1e524 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#5  0x02fa6577 in QEventDispatcherGlib::processEvents (this=0x8d37348, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#6  0x02f78289 in QEventLoop::processEvents (this=0xae416280, flags=...) at kernel/qeventloop.cpp:149
#7  0x02f78522 in QEventLoop::exec (this=0xae416280, flags=...) at kernel/qeventloop.cpp:201
#8  0x02e822a0 in QThread::exec (this=0x8d39c58) at thread/qthread.cpp:492
#9  0x02f59fdb in QInotifyFileSystemWatcherEngine::run (this=0x8d39c58) at io/qfilesystemwatcher_inotify.cpp:248
#10 0x02e84da2 in QThreadPrivate::start (arg=0x8d39c58) at thread/qthread_unix.cpp:320
#11 0x01eb0e99 in start_thread (arg=0xae416b70) at pthread_create.c:304
#12 0x008ae73e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 2 (Thread 0xab9ffb70 (LWP 1965)):
#0  0x00e75416 in __kernel_vsyscall ()
#1  0x01eb548c in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:169
#2  0x008bc3fd in __pthread_cond_wait (cond=0x63d12b0, mutex=0x63d1298) at forward.c:139
#3  0x062b8817 in QTWTF::TCMalloc_PageHeap::scavengerThread (this=0x63cc1c0) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:2359
#4  0x062b8851 in QTWTF::TCMalloc_PageHeap::runScavengerThread (context=0x63cc1c0) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:1464
#5  0x01eb0e99 in start_thread (arg=0xab9ffb70) at pthread_create.c:304
#6  0x008ae73e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 1 (Thread 0xb7853ad0 (LWP 1824)):
[KCrash Handler]
#7  0x00000058 in ?? ()
#8  0x02f8eda7 in QObject::disconnect (sender=0x9c419d0, signal=0x0, receiver=0x95529d0, method=0x0) at kernel/qobject.cpp:2737
#9  0x044dcf90 in TaskItemLayout::remove (this=0x95529d0, item=0x9c419d0) at ../../../../../plasma/desktop/applets/tasks/taskitemlayout.cpp:161
#10 0x044dd10c in TaskItemLayout::removeTaskItem (this=0x95529d0, item=0x9c419d0) at ../../../../../plasma/desktop/applets/tasks/taskitemlayout.cpp:113
#11 0x044e8fb1 in TaskGroupItem::splitGroup (this=0x9a2a490, newSplitPosition=2) at ../../../../../plasma/desktop/applets/tasks/taskgroupitem.cpp:145
#12 0x044dcb90 in TaskItemLayout::layoutItems (this=0x8b94bb0) at ../../../../../plasma/desktop/applets/tasks/taskitemlayout.cpp:378
#13 0x044e70d8 in TaskGroupItem::constraintsChanged (this=0x8b37a30, constraints=...) at ../../../../../plasma/desktop/applets/tasks/taskgroupitem.cpp:857
#14 0x044ebdc6 in TaskGroupItem::qt_metacall (this=0x8b37a30, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0xbf839ca8) at ./taskgroupitem.moc:120
#15 0x02f7f6ba in QMetaObject::metacall (object=0x8b37a30, cl=QMetaObject::InvokeMetaMethod, idx=44, argv=0xbf839ca8) at kernel/qmetaobject.cpp:237
#16 0x02f8f4ff in QMetaObject::activate (sender=0x8854e30, m=0x44f05b0, local_signal_index=0, argv=0xbf839ca8) at kernel/qobject.cpp:3287
#17 0x044d7803 in Tasks::constraintsChanged (this=0x8854e30, _t1=...) at ./tasks.moc:115
#18 0x044d787d in Tasks::constraintsEvent (this=0x8854e30, constraints=...) at ../../../../../plasma/desktop/applets/tasks/tasks.cpp:301
#19 0x00a6e4b9 in Plasma::Applet::flushPendingConstraintsEvents (this=0x8854e30) at ../../plasma/applet.cpp:1345
#20 0x00a6f222 in Plasma::Applet::timerEvent (this=0x8854e30, event=0xbf83a3bc) at ../../plasma/applet.cpp:2432
#21 0x02f8e214 in QObject::event (this=0x8854e30, e=0xbf83a3bc) at kernel/qobject.cpp:1190
#22 0x019e8a14 in QGraphicsWidget::event (this=0x8854e30, event=0xbf83a3bc) at graphicsview/qgraphicswidget.cpp:1423
#23 0x0134ed24 in QApplicationPrivate::notify_helper (this=0x8728230, receiver=0x8854e30, e=0xbf83a3bc) at kernel/qapplication.cpp:4462
#24 0x013538ce in QApplication::notify (this=0x871dee8, receiver=0x8854e30, e=0xbf83a3bc) at kernel/qapplication.cpp:3862
#25 0x0105832a in KApplication::notify (this=0x871dee8, receiver=0x8854e30, event=0xbf83a3bc) at ../../kdeui/kernel/kapplication.cpp:311
#26 0x02f790bb in QCoreApplication::notifyInternal (this=0x871dee8, receiver=0x8854e30, event=0xbf83a3bc) at kernel/qcoreapplication.cpp:731
#27 0x02fa91e4 in sendEvent (this=0x872b974) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#28 QTimerInfoList::activateTimers (this=0x872b974) at kernel/qeventdispatcher_unix.cpp:604
#29 0x02fa5df4 in timerSourceDispatch (source=0x872b940) at kernel/qeventdispatcher_glib.cpp:184
#30 0x06b1daa8 in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0
#31 0x06b1e270 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#32 0x06b1e524 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#33 0x02fa653c in QEventDispatcherGlib::processEvents (this=0x86b1a90, flags=...) at kernel/qeventdispatcher_glib.cpp:422
#34 0x014051e5 in QGuiEventDispatcherGlib::processEvents (this=0x86b1a90, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#35 0x02f78289 in QEventLoop::processEvents (this=0xbf83a654, flags=...) at kernel/qeventloop.cpp:149
#36 0x02f78522 in QEventLoop::exec (this=0xbf83a654, flags=...) at kernel/qeventloop.cpp:201
#37 0x02f7cecc in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1008
#38 0x0134c8e7 in QApplication::exec () at kernel/qapplication.cpp:3736
#39 0x0026b7cb in kdemain (argc=1, argv=0xbf83a874) at ../../../../plasma/desktop/shell/main.cpp:120
#40 0x080485cb in main (argc=1, argv=0xbf83a874) at plasma-desktop_dummy.cpp:3

This bug may be a duplicate of or related to bug 230414.

Possible duplicates by query: bug 230414.

Reported using DrKonqi
Comment 1 jmaspons 2011-10-26 14:01:28 UTC
I can't reproduce it anymore after upgrade to kubuntu 11.10 and KDE SC 4.7.2
Comment 2 Nico Roeser 2012-09-03 13:13:59 UTC
Created attachment 73624 [details]
New crash information added by DrKonqi

plasma-desktop (0.4) on KDE Platform 4.8.4 (4.8.4) using Qt 4.8.1

- What I was doing when the application crashed:

I ungrouped a group of windows shown in the task bar on Kubuntu 12.04.1.

-- Backtrace (Reduced):
#6  0x00007fbccae0eb02 in QObject::disconnect (sender=0x437bc10, signal=0x0, receiver=0x3e1aef0, method=0x0) at kernel/qobject.cpp:2891
#7  0x00007fbcb1a6a841 in TaskItemLayout::remove (this=0x3e1aef0, item=0x437bc10) at ../../../../../plasma/desktop/applets/tasks/taskitemlayout.cpp:149
#8  0x00007fbcb1a6a93e in TaskItemLayout::removeTaskItem (this=0x3e1aef0, item=0x437bc10) at ../../../../../plasma/desktop/applets/tasks/taskitemlayout.cpp:112
#9  0x00007fbcb1a75168 in TaskGroupItem::splitGroup (this=0x3b077e0, newSplitPosition=1) at ../../../../../plasma/desktop/applets/tasks/taskgroupitem.cpp:149
#10 0x00007fbcb1a6a570 in TaskItemLayout::layoutItems (this=0x29ccf00) at ../../../../../plasma/desktop/applets/tasks/taskitemlayout.cpp:378
Comment 3 Myriam Schweingruber 2012-09-08 13:25:28 UTC
Reopening based on new backtrace. This used to work in KDE 4.7.x, marked as a regression
Comment 4 Dennis Knorr 2013-11-04 10:12:46 UTC
Created attachment 83329 [details]
crashdump for exanding grouped windows on 4.11

crashdump
Comment 5 Dennis Knorr 2013-11-04 10:18:12 UTC
Hi,
this bug still exists on kubuntu saucy (with saucy ppa, backports and updates) with
* plasma-desktop 4:4.11.2-0ubuntu1
* kde 4.11.2
* qt 4:4.8.4+dfsg-0ubuntu18

With attachment 83329 [details] i added the crashdump, i just ungrouped firefox with a fresh kde-workspace (pidgin and dolping also were running, since i need a few windows until grouping is activated)

I work at the City of Munich (LiMux) and this is be a serious bug because normal user do not expect that the session completely crashes (even if the recovery works fine). We would be very glad if this bug could be fixed :-)

If i shall recreate the bug in other conditions (debug symbols, withoug saucy backports/updates), please tell me, i would be glad to be of help.

Sincerely,
Dennis Knorr
Comment 6 Jekyll Wu 2013-11-13 06:06:22 UTC
The problematic code in the backtrace is gone since KDE SC 4.11 with the QML porting of the taskbar. 

Please try KDE SC 4.11
Comment 7 Christoph Feck 2013-11-22 00:19:02 UTC
Dennis, your crash is a duplicate of bug 325383, which is fixed in KDE 4.11.3. In the future, please report new bugs instead of adding to old/unrelated bugs, unless you are sure it is a duplicate.