Bug 223991

Summary: [Fixed in Qt 4.6.1] Plasma crashes after closing new widgets window [qt_closestLeaf, qt_notclosestLeaf, qSortHelper]
Product: [Unmaintained] plasma4 Reporter: Federico De Malmayne Duppa <fduppa>
Component: generalAssignee: Plasma Bugs List <plasma-bugs>
Status: RESOLVED UPSTREAM    
Severity: crash CC: andresbajotierra, crissi99, devoutlytobewished, giupenni78, kaysimon, lu.dolezal, paulo.miguel.dias, tomasz_czaus, xbonio, yoann.laissus
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 Federico De Malmayne Duppa 2010-01-24 03:55:35 UTC
Application: plasma-desktop (0.3)
KDE Platform Version: 4.3.95 (KDE 4.3.95 (KDE 4.4 RC2))
Qt Version: 4.6.0
Operating System: Linux 2.6.31-17-generic i686
Distribution: Ubuntu 9.10

-- Information about the crash:
What I did was the following: 
I unlocked widgets
Removed a widget from desktop
Then clicked the cashier +add new widget
Then closed the new widget window (didn't even click anything)

 -- Backtrace:
Application: Área de trabajo de Plasma (kdeinit4), signal: Segmentation fault
[Current thread is 1 (Thread 0xb78c3760 (LWP 6323))]

Thread 2 (Thread 0xac619b70 (LWP 6324)):
#0  0x00765422 in __kernel_vsyscall ()
#1  0x00451e15 in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:122
#2  0x01a6a307 in QWaitConditionPrivate::wait (this=0x97c35e0, mutex=0x97c35dc, time=4294967295) at thread/qwaitcondition_unix.cpp:87
#3  QWaitCondition::wait (this=0x97c35e0, mutex=0x97c35dc, time=4294967295) at thread/qwaitcondition_unix.cpp:159
#4  0x004e1102 in QHostInfoAgent::run (this=0x97c35d0) at kernel/qhostinfo.cpp:252
#5  0x01a693ae in QThreadPrivate::start (arg=0x97c35d0) at thread/qthread_unix.cpp:244
#6  0x0044d80e in start_thread (arg=0xac619b70) at pthread_create.c:300
#7  0x006878de in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 1 (Thread 0xb78c3760 (LWP 6323)):
[KCrash Handler]
#6  qt_closestLeaf (start=<value optimized out>, end=<value optimized out>, t=@0x9f48ec8, lessThan=<value optimized out>) at graphicsview/qgraphicsitem_p.h:718
#7  qt_notclosestLeaf (start=<value optimized out>, end=<value optimized out>, t=@0x9f48ec8, lessThan=<value optimized out>) at graphicsview/qgraphicsitem_p.h:730
#8  qSortHelper<QList<QGraphicsItem*>::iterator, QGraphicsItem*, bool (*)(QGraphicsItem const*, QGraphicsItem const*)> (start=<value optimized out>, end=<value optimized out>, t=@0x9f48ec8, 
    lessThan=<value optimized out>) at ../../include/QtCore/../../src/corelib/tools/qalgorithms.h:366
#9  0x089f92e4 in qSort<QList<QGraphicsItem*>::iterator, bool (*)(QGraphicsItem const*, QGraphicsItem const*)> (this=0x8e9ba50, rect=..., order=Qt::AscendingOrder)
    at ../../include/QtCore/../../src/corelib/tools/qalgorithms.h:187
#10 QGraphicsScenePrivate::ensureSortedTopLevelItems (this=0x8e9ba50, rect=..., order=Qt::AscendingOrder) at graphicsview/qgraphicsscene_p.h:268
#11 QGraphicsSceneIndex::estimateTopLevelItems (this=0x8e9ba50, rect=..., order=Qt::AscendingOrder) at graphicsview/qgraphicssceneindex.cpp:545
#12 0x089f9a28 in QGraphicsSceneIndexPrivate::items_helper (this=0x8e9ba50, rect=..., mode=Qt::IntersectsItemShape, order=Qt::DescendingOrder, deviceTransform=...)
    at graphicsview/qgraphicssceneindex_p.h:157
#13 QGraphicsSceneIndex::items (this=0x8e9ba50, rect=..., mode=Qt::IntersectsItemShape, order=Qt::DescendingOrder, deviceTransform=...) at graphicsview/qgraphicssceneindex.cpp:457
#14 0x089ce31b in QGraphicsScene::items (this=0x8e84ef8, rect=..., mode=Qt::IntersectsItemShape, order=Qt::DescendingOrder, deviceTransform=...) at graphicsview/qgraphicsscene.cpp:2024
#15 0x089d5a55 in QGraphicsScenePrivate::itemsAtPosition (this=0x8e33e50, screenPos=..., scenePos=..., widget=0x9812df0) at graphicsview/qgraphicsscene.cpp:1023
#16 0x089d5f20 in QGraphicsScenePrivate::dispatchHoverEvent (this=0x8e33e50, hoverEvent=0xbfc4ffac) at graphicsview/qgraphicsscene.cpp:3768
#17 0x089d61d8 in QGraphicsScene::mouseMoveEvent (this=0x8e84ef8, mouseEvent=0xbfc504c4) at graphicsview/qgraphicsscene.cpp:3976
#18 0x089e53cd in QGraphicsScene::event (this=0x8e84ef8, event=0xbfc504c4) at graphicsview/qgraphicsscene.cpp:3341
#19 0x0834019c in QApplicationPrivate::notify_helper (this=0x8db10f0, receiver=0x8e84ef8, e=0xbfc504c4) at kernel/qapplication.cpp:4242
#20 0x08346df7 in QApplication::notify (this=0x8daaf00, receiver=0x8e84ef8, e=0xbfc504c4) at kernel/qapplication.cpp:3661
#21 0x00f6ba1a in KApplication::notify (this=0x8daaf00, receiver=0x8e84ef8, event=0xbfc504c4) at ../../kdeui/kernel/kapplication.cpp:302
#22 0x01b6aeab in QCoreApplication::notifyInternal (this=0x8daaf00, receiver=0x8e84ef8, event=0xbfc504c4) at kernel/qcoreapplication.cpp:704
#23 0x0834107e in QCoreApplication::sendSpontaneousEvent (receiver=0x8e84ef8, event=0x9f48ee0) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:218
#24 qt_sendSpontaneousEvent (receiver=0x8e84ef8, event=0x9f48ee0) at kernel/qapplication.cpp:5219
#25 0x08a05852 in QGraphicsViewPrivate::mouseMoveEventHandler (this=0x980e6c8, event=0xbfc50c90) at graphicsview/qgraphicsview.cpp:617
#26 0x08a05a96 in QGraphicsView::mouseMoveEvent (this=0x9813e60, event=0xbfc50c90) at graphicsview/qgraphicsview.cpp:3157
#27 0x0839cfd6 in QWidget::event (this=0x9813e60, event=0xbfc50c90) at kernel/qwidget.cpp:7959
#28 0x08796433 in QFrame::event (this=0x9813e60, e=0xbfc50c90) at widgets/qframe.cpp:557
#29 0x0882fcf2 in QAbstractScrollArea::viewportEvent (this=0x9ee48c8, e=0x9f48ee0) at widgets/qabstractscrollarea.cpp:1032
#30 0x08a0339b in QGraphicsView::viewportEvent (this=0x9813e60, event=0xbfc50c90) at graphicsview/qgraphicsview.cpp:2747
#31 0x088325e5 in QAbstractScrollAreaPrivate::viewportEvent (this=0x98090c0, o=0x9812df0, e=0xbfc50c90) at widgets/qabstractscrollarea_p.h:100
#32 QAbstractScrollAreaFilter::eventFilter (this=0x98090c0, o=0x9812df0, e=0xbfc50c90) at widgets/qabstractscrollarea_p.h:116
#33 0x01b6a14a in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=0x8db10f0, receiver=0x9812df0, event=0xbfc50c90) at kernel/qcoreapplication.cpp:819
#34 0x08340179 in QApplicationPrivate::notify_helper (this=0x8db10f0, receiver=0x9812df0, e=0xbfc50c90) at kernel/qapplication.cpp:4238
#35 0x0834776b in QApplication::notify (this=0x8daaf00, receiver=0x9812df0, e=0xbfc50c90) at kernel/qapplication.cpp:3822
#36 0x00f6ba1a in KApplication::notify (this=0x8daaf00, receiver=0x9812df0, event=0xbfc50c90) at ../../kdeui/kernel/kapplication.cpp:302
#37 0x01b6aeab in QCoreApplication::notifyInternal (this=0x8daaf00, receiver=0x9812df0, event=0xbfc50c90) at kernel/qcoreapplication.cpp:704
#38 0x0834671f in QCoreApplication::sendEvent (receiver=0x9812df0, event=0xbfc50c90, alienWidget=0x9812df0, nativeWidget=0x9813e60, buttonDown=0x8c7b060, lastMouseReceiver=..., spontaneous=true)
    at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#39 QApplicationPrivate::sendMouseEvent (receiver=0x9812df0, event=0xbfc50c90, alienWidget=0x9812df0, nativeWidget=0x9813e60, buttonDown=0x8c7b060, lastMouseReceiver=..., spontaneous=true)
    at kernel/qapplication.cpp:2956
#40 0x083cfd18 in QETWidget::translateMouseEvent (this=0x9813e60, event=0xbfc511ac) at kernel/qapplication_x11.cpp:4368
#41 0x083ced14 in QApplication::x11ProcessEvent (this=0x8daaf00, event=0xbfc511ac) at kernel/qapplication_x11.cpp:3501
#42 0x083fe04a in x11EventSourceDispatch (s=0x8db37b0, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#43 0x01fdfe88 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#44 0x01fe3730 in ?? () from /lib/libglib-2.0.so.0
#45 0x01fe3863 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#46 0x01b96bd5 in QEventDispatcherGlib::processEvents (this=0x8db0ee0, flags=...) at kernel/qeventdispatcher_glib.cpp:407
#47 0x083fdb75 in QGuiEventDispatcherGlib::processEvents (this=0x8db0ee0, flags=...) at kernel/qguieventdispatcher_glib.cpp:202
#48 0x01b694c9 in QEventLoop::processEvents (this=0xbfc514a4, flags=) at kernel/qeventloop.cpp:149
#49 0x01b6991a in QEventLoop::exec (this=0xbfc514a4, flags=...) at kernel/qeventloop.cpp:201
#50 0x01b6db0f in QCoreApplication::exec () at kernel/qcoreapplication.cpp:981
#51 0x08340237 in QApplication::exec () at kernel/qapplication.cpp:3570
#52 0x018241ee in kdemain () from /usr/lib/libkdeinit4_plasma-desktop.so
#53 0x0804dff7 in launch (argc=<value optimized out>, _name=<value optimized out>, args=<value optimized out>, cwd=0x0, envc=0, envs=0x8da0590 "", reset_env=false, tty=0x0, avoid_loops=false, 
    startup_id_str=0x8051429 "0") at ../../kinit/kinit.cpp:706
#54 0x0804ec15 in handle_launcher_request (sock=<value optimized out>, who=<value optimized out>) at ../../kinit/kinit.cpp:1198
#55 0x0804f08c in handle_requests (waitForPid=<value optimized out>) at ../../kinit/kinit.cpp:1391
#56 0x0804fe27 in main (argc=4, argv=0xbfc51f54, envp=0xbfc51f68) at ../../kinit/kinit.cpp:1830

Reported using DrKonqi
Comment 1 Lukas Dolezal 2010-01-24 12:24:08 UTC
Created attachment 40188 [details]
New crash information added by DrKonqi

Plasma crashes after "new widgets panel" closed.

I opened new widgets panel, choose some widget and drag it to desktop. Widget appears, but when panel close, plasma crashes and widget dont stay there.

I have weather plasmoid on desktop and standart widgets on panel.

Other strange thing is that when I scroll or click left/right arrow on new widgets panel, all widget icons disappear.
Comment 2 Yoann Laissus 2010-01-24 12:30:48 UTC
KDE Platform Version: 4.3.95 (KDE 4.3.95 (KDE 4.4 RC2))
Packages : From the kubuntu beta ppa
Qt Version: 4.6.0
Kernel version : Linux 2.6.33 rc5 i386
Distribution: Kubuntu 9.10

I expect the same issue with an identical backtrace.
Comment 3 Lukas Dolezal 2010-01-24 13:22:10 UTC
Yoann: I know, but DrKonqi didn't let me send short description :(
Comment 4 Dario Andres 2010-01-24 14:45:02 UTC
The more info, the better (that's why we don't allow too much short descriptions..) :)
Comment 5 Dario Andres 2010-01-24 14:52:30 UTC
<offtopic>@Lukas: The "dissapearing widgets on scroll" issue is fixed on branch, which will be 4.4.0 final.</offtopic>
Comment 6 Yoann Laissus 2010-01-24 15:48:58 UTC
@Dario Andres :
I have reported the scroll problem here : https://bugs.kde.org/show_bug.cgi?id=223943
Is this commit which fix the bug ? 
http://websvn.kde.org/?view=revision&sortby=date&revision=1077362

@Lukas : Sorry, my English is very bad so you propably interpret my comment differently of its real meaning.
I just want to say that this bug affects me too :)
Comment 7 Alexis MENARD 2010-01-24 19:20:40 UTC
Please test with Qt 4.6.1.
Comment 8 Kay Simon 2010-01-25 16:36:33 UTC
Created attachment 40217 [details]
New crash information added by DrKonqi

Added trashcan plasmoid to the bottom panel, then closed the add-plasmoids-panel
Comment 9 Alexis MENARD 2010-01-25 17:21:32 UTC
This should be fixed in 4.6.1
Comment 10 gp 2010-01-25 17:33:31 UTC
Created attachment 40219 [details]
New crash information added by DrKonqi

If I add a widget plasma crashed
Comment 11 Dario Andres 2010-01-27 17:41:46 UTC
*** Bug 224461 has been marked as a duplicate of this bug. ***
Comment 12 Dario Andres 2010-01-27 23:16:55 UTC
*** Bug 224493 has been marked as a duplicate of this bug. ***
Comment 13 Dario Andres 2010-01-29 19:58:23 UTC
*** Bug 224802 has been marked as a duplicate of this bug. ***
Comment 14 Dario Andres 2010-01-30 01:03:01 UTC
*** Bug 224638 has been marked as a duplicate of this bug. ***
Comment 15 Dario Andres 2010-01-30 02:01:09 UTC
*** Bug 224825 has been marked as a duplicate of this bug. ***
Comment 16 Dario Andres 2010-02-24 13:39:11 UTC
*** Bug 228272 has been marked as a duplicate of this bug. ***