Summary: | Crash when dragging a file/item over a taskbar entry of a window in another virtual desktop (virtual desktop changes while in the middle of the D&D operation) [null QGraphicsItemPrivate::q_func, QGraphicsItemPrivate::genericMapFromScene, QGraphicsScenePri | ||
---|---|---|---|
Product: | [Unmaintained] plasma4 | Reporter: | Elias Probst <mail> |
Component: | general | Assignee: | Plasma Bugs List <plasma-bugs> |
Status: | RESOLVED UPSTREAM | ||
Severity: | crash | CC: | andresbajotierra, aseigo, bogdan.bivolaru, darktears31, nancy, t.ratovo |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Gentoo Packages | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
Elias Probst
2010-03-26 07:35:47 UTC
I found a way to reproduce this crash: - Make sure the task manager is configured to show only windows from the current desktop - Make sure the window of bangarang is on another virtual desktop than the current one - Click the bangarang icon once - Bangarang appears in the task manager although it still resides on another desktop - Drag something onto the task manager entry of bangarang - KWin switches to the virtual desktop where bangarang resides - While dragging the item now away from the taskbar towards the bangarang window, plasma-desktop crashes. I could reproduce the crash using the provided steps. Here using: Qt: 4.6.2 (kde-qt master commit 62cda737405d0f2163094c44189cfd71ca3c576a Date: Mon Feb 15 14:37:02 2010 +0100) KDE Development Platform: 4.4.69 (KDE 4.4.69 (KDE 4.5 >= 20100324)) kdelibs svn rev. 1107102 / kdebase svn rev. 1107102 on ArchLinux i686 - Kernel 2.6.32.10 I just used a Konqueror window on another virtual desktop, dragging a .desktop file from my FolderView widget... Backtrace: --- Application: Plasma Workspace (plasma-desktop), signal: Segmentation fault [Current thread is 1 (Thread 0xb2d13720 (LWP 6105))] Thread 2 (Thread 0xa730db70 (LWP 6111)): #0 0xb77bb424 in __kernel_vsyscall () #1 0xb52cee55 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 #2 0xb757f489 in QTWTF::TCMalloc_PageHeap::scavengerThread (this=0xb76bda20) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:2304 #3 0xb757ebdb in QTWTF::TCMalloc_PageHeap::runScavengerThread (context=0xb76bda20) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:1438 #4 0xb52ca8ac in start_thread () from /lib/libpthread.so.0 #5 0xb511401e in clone () from /lib/libc.so.6 Thread 1 (Thread 0xb2d13720 (LWP 6105)): [KCrash Handler] #7 0xb5f28744 in QGraphicsItemPrivate::q_func (this=0x20) at graphicsview/qgraphicsitem_p.h:103 #8 0xb5f0a738 in QGraphicsItemPrivate::genericMapFromScene (this=0x20, pos=..., viewport=0x8c14748) at graphicsview/qgraphicsitem.cpp:915 #9 0xb5f43be9 in QGraphicsScenePrivate::sendDragDropEvent (this=0x881ce10, item=0x9365768, dragDropEvent=0xbfc17c44) at graphicsview/qgraphicsscene.cpp:1209 #10 0xb5f4b09e in QGraphicsScene::dragMoveEvent (this=0x88012d8, event=0xbfc182cc) at graphicsview/qgraphicsscene.cpp:3631 #11 0xb7185ca6 in Plasma::Corona::dragMoveEvent (this=0x88012d8, event=0xbfc182cc) at /home/kde-devel/kde/src/KDE/kdelibs/plasma/corona.cpp:785 #12 0xb5f4a0ae in QGraphicsScene::event (this=0x88012d8, event=0xbfc182cc) at graphicsview/qgraphicsscene.cpp:3343 #13 0xb57e6cd6 in QApplicationPrivate::notify_helper (this=0x8738038, receiver=0x88012d8, e=0xbfc182cc) at kernel/qapplication.cpp:4300 #14 0xb57e4418 in QApplication::notify (this=0x872fa38, receiver=0x88012d8, e=0xbfc182cc) at kernel/qapplication.cpp:3704 #15 0xb69362b8 in KApplication::notify (this=0x872fa38, receiver=0x88012d8, event=0xbfc182cc) at /home/kde-devel/kde/src/KDE/kdelibs/kdeui/kernel/kapplication.cpp:302 #16 0xb5471935 in QCoreApplication::notifyInternal (this=0x872fa38, receiver=0x88012d8, event=0xbfc182cc) at kernel/qcoreapplication.cpp:704 #17 0xb57d729d in QCoreApplication::sendEvent (receiver=0x88012d8, event=0xbfc182cc) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215 #18 0xb5f78dcc in QGraphicsView::dragMoveEvent (this=0x8c14d58, event=0xbfc18b44) at graphicsview/qgraphicsview.cpp:2939 #19 0xb5852dab in QWidget::event (this=0x8c14d58, event=0xbfc18b44) at kernel/qwidget.cpp:8196 #20 0xb5cd4934 in QFrame::event (this=0x8c14d58, e=0xbfc18b44) at widgets/qframe.cpp:557 #21 0xb5d8239d in QAbstractScrollArea::viewportEvent (this=0x8c14d58, e=0xbfc18b44) at widgets/qabstractscrollarea.cpp:1036 #22 0xb5f78563 in QGraphicsView::viewportEvent (this=0x8c14d58, event=0xbfc18b44) at graphicsview/qgraphicsview.cpp:2787 #23 0xb5d82f01 in QAbstractScrollAreaPrivate::viewportEvent (this=0x8d2f288, event=0xbfc18b44) at widgets/qabstractscrollarea_p.h:100 #24 0xb5d82fe8 in QAbstractScrollAreaFilter::eventFilter (this=0x8c82948, o=0x8c14748, e=0xbfc18b44) at widgets/qabstractscrollarea_p.h:116 #25 0xb5471c13 in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=0x8738038, receiver=0x8c14748, event=0xbfc18b44) at kernel/qcoreapplication.cpp:819 #26 0xb57e6cb2 in QApplicationPrivate::notify_helper (this=0x8738038, receiver=0x8c14748, e=0xbfc18b44) at kernel/qapplication.cpp:4296 #27 0xb57e5ed8 in QApplication::notify (this=0x872fa38, receiver=0x8c14748, e=0xbfc18b44) at kernel/qapplication.cpp:4108 #28 0xb69362b8 in KApplication::notify (this=0x872fa38, receiver=0x8c14748, event=0xbfc18b44) at /home/kde-devel/kde/src/KDE/kdelibs/kdeui/kernel/kapplication.cpp:302 #29 0xb5471935 in QCoreApplication::notifyInternal (this=0x872fa38, receiver=0x8c14748, event=0xbfc18b44) at kernel/qcoreapplication.cpp:704 #30 0xb57d729d in QCoreApplication::sendEvent (receiver=0x8c14748, event=0xbfc18b44) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215 #31 0xb589b7ce in handle_xdnd_position (w=0x8c14d58, xe=0xbfc18cf0, passive=false) at kernel/qdnd_x11.cpp:928 #32 0xb589dd47 in QDragManager::move (this=0x950fc40, globalPos=...) at kernel/qdnd_x11.cpp:1643 #33 0xb589c92e in QDragManager::eventFilter (this=0x950fc40, o=0x8b91018, e=0xbfc194cc) at kernel/qdnd_x11.cpp:1287 #34 0xb5471b2a in QCoreApplicationPrivate::sendThroughApplicationEventFilters (this=0x8738038, receiver=0x8b91018, event=0xbfc194cc) at kernel/qcoreapplication.cpp:800 #35 0xb57e6b92 in QApplicationPrivate::notify_helper (this=0x8738038, receiver=0x8b91018, e=0xbfc194cc) at kernel/qapplication.cpp:4275 #36 0xb57e4d55 in QApplication::notify (this=0x872fa38, receiver=0x8b91018, e=0xbfc194cc) at kernel/qapplication.cpp:3865 #37 0xb69362b8 in KApplication::notify (this=0x872fa38, receiver=0x8b91018, event=0xbfc194cc) at /home/kde-devel/kde/src/KDE/kdelibs/kdeui/kernel/kapplication.cpp:302 #38 0xb5471935 in QCoreApplication::notifyInternal (this=0x872fa38, receiver=0x8b91018, event=0xbfc194cc) at kernel/qcoreapplication.cpp:704 #39 0xb57e9a8d in QCoreApplication::sendSpontaneousEvent (receiver=0x8b91018, event=0xbfc194cc) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:218 #40 0xb57e336f in QApplicationPrivate::sendMouseEvent (receiver=0x8b91018, event=0xbfc194cc, alienWidget=0x0, nativeWidget=0x8b91018, buttonDown=0xb62d9638, lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:2963 #41 0xb5889052 in QETWidget::translateMouseEvent (this=0x8b91018, event=0xbfc199f0) at kernel/qapplication_x11.cpp:4368 #42 0xb5885c92 in QApplication::x11ProcessEvent (this=0x872fa38, event=0xbfc199f0) at kernel/qapplication_x11.cpp:3379 #43 0xb58bc291 in x11EventSourceDispatch (s=0x873aef0, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146 #44 0xb344f398 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0 #45 0xb3452c10 in g_main_context_iterate () from /usr/lib/libglib-2.0.so.0 #46 0xb3452d43 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0 #47 0xb54a9338 in QEventDispatcherGlib::processEvents (this=0x8700e50, flags=...) at kernel/qeventdispatcher_glib.cpp:412 #48 0xb58bc8c6 in QGuiEventDispatcherGlib::processEvents (this=0x8700e50, flags=...) at kernel/qguieventdispatcher_glib.cpp:204 #49 0xb546ed0f in QEventLoop::processEvents (this=0x8dcbd80, flags=...) at kernel/qeventloop.cpp:149 #50 0xb546ee54 in QEventLoop::exec (this=0x8dcbd80, flags=...) at kernel/qeventloop.cpp:201 #51 0xb589efbc in QDragManager::drag (this=0x950fc40, o=0x9362300) at kernel/qdnd_x11.cpp:1960 #52 0xb57fa9e8 in QDrag::exec (this=0x9362300, supportedActions=..., defaultDropAction=Qt::IgnoreAction) at kernel/qdrag.cpp:282 #53 0xb57fa88c in QDrag::exec (this=0x9362300, supportedActions=...) at kernel/qdrag.cpp:239 #54 0xa76af9f4 in IconView::startDrag (this=0x8d0a410, pos=..., widget=0x8a38a10) at /home/kde-devel/kde/src/KDE/kdebase/apps/plasma/applets/folderview/iconview.cpp:2427 #55 0xa76ac8ff in IconView::mouseMoveEvent (this=0x8d0a410, event=0xbfc1a9c8) at /home/kde-devel/kde/src/KDE/kdebase/apps/plasma/applets/folderview/iconview.cpp:1942 #56 0xb5f1acfa in QGraphicsItem::sceneEvent (this=0x8d0a418, event=0xbfc1a9c8) at graphicsview/qgraphicsitem.cpp:6493 #57 0xb5f8114d in QGraphicsWidget::sceneEvent (this=0x8d0a410, event=0xbfc1a9c8) at graphicsview/qgraphicswidget.cpp:1129 #58 0xb5f43a02 in QGraphicsScenePrivate::sendEvent (this=0x881ce10, item=0x8d0a418, event=0xbfc1a9c8) at graphicsview/qgraphicsscene.cpp:1181 #59 0xb5f44166 in QGraphicsScenePrivate::sendMouseEvent (this=0x881ce10, mouseEvent=0xbfc1a9c8) at graphicsview/qgraphicsscene.cpp:1255 #60 0xb5f4c1c6 in QGraphicsScene::mouseMoveEvent (this=0x88012d8, mouseEvent=0xbfc1a9c8) at graphicsview/qgraphicsscene.cpp:4031 #61 0xb5f4a3cf in QGraphicsScene::event (this=0x88012d8, event=0xbfc1a9c8) at graphicsview/qgraphicsscene.cpp:3391 #62 0xb57e6cd6 in QApplicationPrivate::notify_helper (this=0x8738038, receiver=0x88012d8, e=0xbfc1a9c8) at kernel/qapplication.cpp:4300 #63 0xb57e4418 in QApplication::notify (this=0x872fa38, receiver=0x88012d8, e=0xbfc1a9c8) at kernel/qapplication.cpp:3704 #64 0xb69362b8 in KApplication::notify (this=0x872fa38, receiver=0x88012d8, event=0xbfc1a9c8) at /home/kde-devel/kde/src/KDE/kdelibs/kdeui/kernel/kapplication.cpp:302 #65 0xb5471935 in QCoreApplication::notifyInternal (this=0x872fa38, receiver=0x88012d8, event=0xbfc1a9c8) at kernel/qcoreapplication.cpp:704 #66 0xb57e9a8d in QCoreApplication::sendSpontaneousEvent (receiver=0x88012d8, event=0xbfc1a9c8) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:218 #67 0xb57e702f in qt_sendSpontaneousEvent (receiver=0x88012d8, event=0xbfc1a9c8) at kernel/qapplication.cpp:5279 #68 0xb5f7082b in QGraphicsViewPrivate::mouseMoveEventHandler (this=0x8a25690, event=0xbfc1b47c) at graphicsview/qgraphicsview.cpp:645 #69 0xb5f79fa8 in QGraphicsView::mouseMoveEvent (this=0x8a419d8, event=0xbfc1b47c) at graphicsview/qgraphicsview.cpp:3197 #70 0xb58523f6 in QWidget::event (this=0x8a419d8, event=0xbfc1b47c) at kernel/qwidget.cpp:7983 #71 0xb5cd4934 in QFrame::event (this=0x8a419d8, e=0xbfc1b47c) at widgets/qframe.cpp:557 #72 0xb5d8239d in QAbstractScrollArea::viewportEvent (this=0x8a419d8, e=0xbfc1b47c) at widgets/qabstractscrollarea.cpp:1036 #73 0xb5f78563 in QGraphicsView::viewportEvent (this=0x8a419d8, event=0xbfc1b47c) at graphicsview/qgraphicsview.cpp:2787 #74 0xb5d82f01 in QAbstractScrollAreaPrivate::viewportEvent (this=0x8a25690, event=0xbfc1b47c) at widgets/qabstractscrollarea_p.h:100 #75 0xb5d82fe8 in QAbstractScrollAreaFilter::eventFilter (this=0x8a36bd0, o=0x8a38a10, e=0xbfc1b47c) at widgets/qabstractscrollarea_p.h:116 #76 0xb5471c13 in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=0x8738038, receiver=0x8a38a10, event=0xbfc1b47c) at kernel/qcoreapplication.cpp:819 #77 0xb57e6cb2 in QApplicationPrivate::notify_helper (this=0x8738038, receiver=0x8a38a10, e=0xbfc1b47c) at kernel/qapplication.cpp:4296 #78 0xb57e4d55 in QApplication::notify (this=0x872fa38, receiver=0x8a38a10, e=0xbfc1b47c) at kernel/qapplication.cpp:3865 #79 0xb69362b8 in KApplication::notify (this=0x872fa38, receiver=0x8a38a10, event=0xbfc1b47c) at /home/kde-devel/kde/src/KDE/kdelibs/kdeui/kernel/kapplication.cpp:302 #80 0xb5471935 in QCoreApplication::notifyInternal (this=0x872fa38, receiver=0x8a38a10, event=0xbfc1b47c) at kernel/qcoreapplication.cpp:704 #81 0xb57e9a8d in QCoreApplication::sendSpontaneousEvent (receiver=0x8a38a10, event=0xbfc1b47c) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:218 #82 0xb57e336f in QApplicationPrivate::sendMouseEvent (receiver=0x8a38a10, event=0xbfc1b47c, alienWidget=0x8a38a10, nativeWidget=0x8a419d8, buttonDown=0xb62d9638, lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:2963 #83 0xb5889052 in QETWidget::translateMouseEvent (this=0x8a419d8, event=0xbfc1b9a0) at kernel/qapplication_x11.cpp:4368 #84 0xb5885c92 in QApplication::x11ProcessEvent (this=0x872fa38, event=0xbfc1b9a0) at kernel/qapplication_x11.cpp:3379 #85 0xb58bc291 in x11EventSourceDispatch (s=0x873aef0, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146 #86 0xb344f398 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0 #87 0xb3452c10 in g_main_context_iterate () from /usr/lib/libglib-2.0.so.0 #88 0xb3452d43 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0 #89 0xb54a9338 in QEventDispatcherGlib::processEvents (this=0x8700e50, flags=...) at kernel/qeventdispatcher_glib.cpp:412 #90 0xb58bc8c6 in QGuiEventDispatcherGlib::processEvents (this=0x8700e50, flags=...) at kernel/qguieventdispatcher_glib.cpp:204 #91 0xb546ed0f in QEventLoop::processEvents (this=0xbfc1bc7c, flags=...) at kernel/qeventloop.cpp:149 #92 0xb546ee54 in QEventLoop::exec (this=0xbfc1bc7c, flags=...) at kernel/qeventloop.cpp:201 #93 0xb5472011 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:981 #94 0xb57e4026 in QApplication::exec () at kernel/qapplication.cpp:3579 #95 0xb7784d41 in kdemain (argc=3, argv=0xbfc1be94) at /home/kde-devel/kde/src/KDE/kdebase/workspace/plasma/desktop/shell/main.cpp:118 #96 0x080487c9 in main (argc=3, argv=0xbfc1be94) at /home/kde-devel/kde/build/KDE/kdebase/workspace/plasma/desktop/shell/plasma-desktop_dummy.cpp:3 *** Bug 227050 has been marked as a duplicate of this bug. *** Bug 210941 looks like an old version/case of this crash this is a crash in qt; it's not checking the value of item->d_ptr in QGraphicsScenePrivate::sendDragDropEvent and/or is not clearing the event target when the item is deleted. (In reply to comment #5) > this is a crash in qt; it's not checking the value of item->d_ptr in > QGraphicsScenePrivate::sendDragDropEvent and/or is not clearing the event > target when the item is deleted. Is there a corresponding upstream bug report yet? It would be probably helpful to link it here. I can't reproduce the crash with 4.4.3 either with Qt 4.6 and Qt 4.7 I tried the bangarang steps : "I found a way to reproduce this crash: - Make sure the task manager is configured to show only windows from the current desktop -> done - Make sure the window of bangarang is on another virtual desktop than the current one -> done - Click the bangarang icon once -> which one where? systray/taskbar?? - Bangarang appears in the task manager although it still resides on another desktop -> well I don't see that" That fails for me. Bangarang is let say on desktop 2, I'm on desktop one and I don't see any task entry of bangarang. I tried the dario andres steps but same how you can drop stuff on the Konqueror taks if it's in another desktop and you have the option "show only tasks from the current desktop". For me the former option works fine. I also tried without the "show only tasks from the current desktop" and i was not able to reproduce. Ok resolved for 4.7.0 sha key 798bdb4543f84d427659b950a3a1643ae4987b8b great, Alexis, thanks! :) *** Bug 261531 has been marked as a duplicate of this bug. *** I did an aptitude reinstall of Iceweasel after it would not open and my automated bug report was marked as a duplicate of this one. Iceweasel now opens. I am not sure if it could be related, but I have been trying to install the very latest flash player plugin recently as a web site I want to use requires it. I don't know if that could relate to this. *** Bug 279574 has been marked as a duplicate of this bug. *** |