Bug 225143

Summary: [steps] Plasma crashes when closing a detached extender of a removed widget (battery widget as example) [assert, QGraphicsItem::isWidget, QGraphicsWidget::itemChange, ..., Extender, .., Plasma::ExtenderItem::returnToSource]
Product: [Unmaintained] plasma4 Reporter: anton <benderamp>
Component: generalAssignee: Plasma Bugs List <plasma-bugs>
Status: RESOLVED DUPLICATE    
Severity: crash CC: andresbajotierra, aseigo, asraniel
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description anton 2010-02-01 15:28:46 UTC
Version:            (using Devel)
OS:                Linux
Installed from:    Compiled sources

1. Add battery monitor plasmoid to desktop
2. Click on the icon to see the popup panel
3. Drag the panel from battery and drop on desktop as separate widget
4. Close original battery widget
5. Close config panel widget - plasma crash

Also playing with the panel widget when it is dropped separately to desktop causes other problems (for example drag/drop it another place removes its content), but that's another story.
Comment 1 Dario Andres 2010-02-01 22:10:50 UTC
This looks like another version of bug 219194.
---
Here using:

Qt: 4.6.1 (kde-qt master commit 5ccbae0c2d9254efe67599137afec763d4fec0f6
        Date:   Tue Jan 19 20:42:24 2010 +0100)
KDE Development Platform: 4.4.61 (KDE 4.4.61 (KDE 4.5 >= 20100127))
kdelibs svn rev. 1082077 / kdebase svn rev. 1082077
on ArchLinux i686 - Kernel 2.6.32.3

I could reproduce the bug.

Backtrace:

Application: Plasma Workspace (plasma-desktop), signal: Aborted
[KCrash Handler]
#6  0xb78aa424 in __kernel_vsyscall ()
#7  0xb519f571 in raise () from /lib/libc.so.6
#8  0xb51a0d72 in abort () from /lib/libc.so.6
#9  0xb547ea93 in qt_message_output (msgType=QtFatalMsg, buf=0x90555a0 "ASSERT: \"d\" in file ../../include/QtCore/../../src/corelib/tools/qscopedpointer.h, line 112") at global/qglobal.cpp:2250
#10 0xb547ec55 in qt_message (msgType=QtFatalMsg, msg=0xb561e684 "ASSERT: \"%s\" in file %s, line %d", ap=0xbfa6ec04 "\376\225\032\266\300\225\032\266p") at global/qglobal.cpp:2296
#11 0xb547f073 in qFatal (msg=0xb561e684 "ASSERT: \"%s\" in file %s, line %d") at global/qglobal.cpp:2479
#12 0xb547e62c in qt_assert (assertion=0xb61a95fe "d", file=0xb61a95c0 "../../include/QtCore/../../src/corelib/tools/qscopedpointer.h", line=112) at global/qglobal.cpp:2013
#13 0xb605b7d9 in QScopedPointer<QGraphicsItemPrivate, QScopedPointerDeleter<QGraphicsItemPrivate> >::operator-> (this=0x903d91c) at ../../include/QtCore/../../src/corelib/tools/qscopedpointer.h:112
#14 0xb603d8ee in QGraphicsItem::isWidget (this=0x903d918) at graphicsview/qgraphicsitem.cpp:1598
#15 0xb60b0046 in QGraphicsWidget::itemChange (this=0x9041468, change=QGraphicsItem::ItemParentChange, value=...) at graphicsview/qgraphicswidget.cpp:1057
#16 0xb603b0b2 in QGraphicsItemPrivate::setParentItemHelper (this=0x90ed778, newParent=0x903d918) at graphicsview/qgraphicsitem.cpp:998
#17 0xb603d84b in QGraphicsItem::setParentItem (this=0x9041470, parent=0x903d918) at graphicsview/qgraphicsitem.cpp:1560
#18 0xb60b37ff in QGraphicsWidgetPrivate::init (this=0x90ed778, parentItem=0x903d918, wFlags=...) at graphicsview/qgraphicswidget_p.cpp:73
#19 0xb60ad2d8 in QGraphicsWidget (this=0x9041468, parent=0x903d918, wFlags=...) at graphicsview/qgraphicswidget.cpp:181
#20 0xb72c68f9 in Extender (this=0x9041468, applet=0x903d910) at /home/kde-devel/kde/src/KDE/kdelibs/plasma/extenders/extender.cpp:96
#21 0xb727047a in Plasma::Applet::extender (this=0x903d910) at /home/kde-devel/kde/src/KDE/kdelibs/plasma/applet.cpp:746
#22 0xb72d112f in Plasma::ExtenderItem::returnToSource (this=0x8ffa8a0) at /home/kde-devel/kde/src/KDE/kdelibs/plasma/extenders/extenderitem.cpp:468
#23 0xb72f54fc in ~ExtenderApplet (this=0x8df3d10, __in_chrg=<value optimized out>) at /home/kde-devel/kde/src/KDE/kdelibs/plasma/private/extenderapplet.cpp:42
#24 0xb55bd1b2 in qDeleteInEventHandler (o=0x8df3d10) at kernel/qobject.cpp:3980
#25 0xb55b7d2c in QObject::event (this=0x8df3d10, e=0x8e89940) at kernel/qobject.cpp:1231
#26 0xb60b0a7d in QGraphicsWidget::event (this=0x8df3d10, event=0x8e89940) at graphicsview/qgraphicswidget.cpp:1361
#27 0xb5918b26 in QApplicationPrivate::notify_helper (this=0x884de70, receiver=0x8df3d10, e=0x8e89940) at kernel/qapplication.cpp:4298
#28 0xb5916268 in QApplication::notify (this=0x8844270, receiver=0x8df3d10, e=0x8e89940) at kernel/qapplication.cpp:3702
#29 0xb6a61c68 in KApplication::notify (this=0x8844270, receiver=0x8df3d10, event=0x8e89940) at /home/kde-devel/kde/src/KDE/kdelibs/kdeui/kernel/kapplication.cpp:302
#30 0xb55a05ed in QCoreApplication::notifyInternal (this=0x8844270, receiver=0x8df3d10, event=0x8e89940) at kernel/qcoreapplication.cpp:704
#31 0xb5908f85 in QCoreApplication::sendEvent (receiver=0x8df3d10, event=0x8e89940) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#32 0xb55a16a1 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x88160e8) at kernel/qcoreapplication.cpp:1345
#33 0xb55a1359 in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1238
#34 0xb59eee90 in QCoreApplication::sendPostedEvents () at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#35 0xb55d6f68 in postEventSourceDispatch (s=0x884f798) at kernel/qeventdispatcher_glib.cpp:276
#36 0xb3773378 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#37 0xb3776bf0 in g_main_context_iterate () from /usr/lib/libglib-2.0.so.0
#38 0xb3776d23 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#39 0xb55d7f74 in QEventDispatcherGlib::processEvents (this=0x8815e50, flags=...) at kernel/qeventdispatcher_glib.cpp:412
#40 0xb59edd9e in QGuiEventDispatcherGlib::processEvents (this=0x8815e50, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#41 0xb559d9c7 in QEventLoop::processEvents (this=0xbfa6f97c, flags=...) at kernel/qeventloop.cpp:149
#42 0xb559db0c in QEventLoop::exec (this=0xbfa6f97c, flags=...) at kernel/qeventloop.cpp:201
#43 0xb55a0cc9 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:981
#44 0xb5915e76 in QApplication::exec () at kernel/qapplication.cpp:3577
#45 0xb7872a72 in kdemain (argc=1, argv=0xbfa6fb74) at /home/kde-devel/kde/src/KDE/kdebase/workspace/plasma/desktop/shell/main.cpp:112
#46 0x080487c9 in main (argc=1, argv=0xbfa6fb74) at /home/kde-devel/kde/build/KDE/kdebase/workspace/plasma/desktop/shell/plasma-desktop_dummy.cpp:3
Comment 2 Aaron J. Seigo 2010-02-10 09:38:22 UTC

*** This bug has been marked as a duplicate of bug 219194 ***