Bug 458503 - Plasma crashes when unplugging screen while widget explorer is open
Summary: Plasma crashes when unplugging screen while widget explorer is open
Status: REPORTED
Alias: None
Product: plasmashell
Classification: Plasma
Component: Widget Explorer (show other bugs)
Version: master
Platform: Other Linux
: NOR crash
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-08-30 10:15 UTC by Nicolas Fella
Modified: 2022-08-30 21:54 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Nicolas Fella 2022-08-30 10:15:56 UTC
STEPS TO REPRODUCE
1. Connect an external monitor 
2. Create a default panel on that monitor
3. On that monitor, right click > Add new widget
4. While the widget explorer is open unplug the monitor

Application: Plasma (plasmashell), signal: Segmentation fault
Content of s_kcrashErrorMessage: std::unique_ptr<char []> = {get() = 0x0}
[KCrash Handler]
#5  0x00007f7d3dc7d2b1 in QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::operator->() const (this=0x739) at /home/nico/workspace/qt5/qtbase/include/QtCore/../../src/corelib/tools/qscopedpointer.h:118
#6  qGetPtrHelper<QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> > const>(QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> > const&) (ptr=...) at /home/nico/workspace/qt5/qtbase/include/QtCore/../../src/corelib/global/qglobal.h:1143
#7  QQuickWindow::d_func() const (this=0x731) at items/qquickwindow.h:79
#8  QQuickWindow::mouseGrabberItem() const (this=0x731) at items/qquickwindow.cpp:1732
#9  0x00007f7d3dc7f957 in QQuickWindowPrivate::removeGrabber(QQuickItem*, bool, bool) (this=this@entry=0x7f7d14029320, grabber=grabber@entry=0x97acd80, mouse=mouse@entry=true, touch=touch@entry=true) at items/qquickwindow.cpp:1001
#10 0x00007f7d3dc694d1 in QQuickItemPrivate::derefWindow() (this=this@entry=0x97ace40) at items/qquickitem.cpp:3033
#11 0x00007f7d3dc69da2 in QQuickItem::setParentItem(QQuickItem*) (this=0x97acd80, parentItem=parentItem@entry=0x0) at items/qquickitem.cpp:2717
#12 0x00007f7d3dc6a2bc in QQuickItem::~QQuickItem() (this=this@entry=0x97ac4e0, __in_chrg=<optimized out>) at /home/nico/workspace/qt5/qtbase/include/QtCore/../../src/corelib/tools/qlist.h:117
#13 0x00007f7d3ddca295 in QQmlPrivate::QQmlElement<QQuickItem>::~QQmlElement() (this=0x97ac4e0, __in_chrg=<optimized out>) at ../../include/QtQml/../../src/qml/qml/qqmlprivate.h:144
#14 QQmlPrivate::QQmlElement<QQuickItem>::~QQmlElement() (this=0x97ac4e0, __in_chrg=<optimized out>) at ../../include/QtQml/../../src/qml/qml/qqmlprivate.h:144
#15 0x00007f7d3bc2710e in QObjectPrivate::deleteChildren() (this=0x97ac0e0) at kernel/qobject.cpp:2104
#16 0x00007f7d3bc32630 in QObject::~QObject() (this=this@entry=0x9870f50, __in_chrg=<optimized out>) at kernel/qobject.cpp:1082
#17 0x00007f7d3dc6a41f in QQuickItem::~QQuickItem() (this=this@entry=0x9870f50, __in_chrg=<optimized out>) at items/qquickitem.cpp:2388
#18 0x00007f7cf04bbbf5 in QQuickLayout::~QQuickLayout() (this=this@entry=0x9870f50, __in_chrg=<optimized out>) at qquicklayout.cpp:750
#19 0x00007f7cf04bc52e in QQuickGridLayoutBase::~QQuickGridLayoutBase() (this=this@entry=0x9870f50, __in_chrg=<optimized out>) at qquicklinearlayout.cpp:315
#20 0x00007f7cf04c3fc0 in QQuickLinearLayout::~QQuickLinearLayout() (this=0x9870f50, __in_chrg=<optimized out>) at ./qquicklinearlayout_p.h:196
#21 QQuickColumnLayout::~QQuickColumnLayout() (this=0x9870f50, __in_chrg=<optimized out>) at ./qquicklinearlayout_p.h:244
#22 QQmlPrivate::QQmlElement<QQuickColumnLayout>::~QQmlElement() (this=0x9870f50, __in_chrg=<optimized out>) at ../../../include/QtQml/../../src/qml/qml/qqmlprivate.h:144
#23 QQmlPrivate::QQmlElement<QQuickColumnLayout>::~QQmlElement() (this=0x9870f50, __in_chrg=<optimized out>) at ../../../include/QtQml/../../src/qml/qml/qqmlprivate.h:144
#24 0x00007f7d3bc2710e in QObjectPrivate::deleteChildren() (this=0x97ab760) at kernel/qobject.cpp:2104
#25 0x00007f7d3bc32630 in QObject::~QObject() (this=<optimized out>, __in_chrg=<optimized out>) at kernel/qobject.cpp:1082
#26 0x00007f7d3dc6a41f in QQuickItem::~QQuickItem() (this=<optimized out>, __in_chrg=<optimized out>) at items/qquickitem.cpp:2388
#27 0x00007f7cf03544d5 in QQmlPrivate::QQmlElement<DeclarativeDragArea>::~QQmlElement() (this=0x97ab620, __in_chrg=<optimized out>) at /home/nico/kde/usr/include/QtQml/qqmlprivate.h:144
#28 QQmlPrivate::QQmlElement<DeclarativeDragArea>::~QQmlElement() (this=0x97ab620, __in_chrg=<optimized out>) at /home/nico/kde/usr/include/QtQml/qqmlprivate.h:144
#29 0x00007f7d3bc2710e in QObjectPrivate::deleteChildren() (this=0x97ab1d0) at kernel/qobject.cpp:2104
#30 0x00007f7d3bc32630 in QObject::~QObject() (this=this@entry=0x97ab110, __in_chrg=<optimized out>) at kernel/qobject.cpp:1082
#31 0x00007f7d3dc6a41f in QQuickItem::~QQuickItem() (this=this@entry=0x97ab110, __in_chrg=<optimized out>) at items/qquickitem.cpp:2388
#32 0x00007f7d3ddca295 in QQmlPrivate::QQmlElement<QQuickItem>::~QQmlElement() (this=0x97ab110, __in_chrg=<optimized out>) at ../../include/QtQml/../../src/qml/qml/qqmlprivate.h:144
#33 QQmlPrivate::QQmlElement<QQuickItem>::~QQmlElement() (this=0x97ab110, __in_chrg=<optimized out>) at ../../include/QtQml/../../src/qml/qml/qqmlprivate.h:144
#34 0x00007f7d3bc291c0 in QObject::event(QEvent*) (this=0x97ab110, e=0x88467a0) at kernel/qobject.cpp:1301
#35 0x00007f7d3cae637e in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x97ab110, e=0x88467a0) at kernel/qapplication.cpp:3637
#36 0x00007f7d3bbff458 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x97ab110, event=0x88467a0) at kernel/qcoreapplication.cpp:1064
#37 0x00007f7d3bc02131 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=0x0, event_type=0, data=0x1b3c430) at kernel/qcoreapplication.cpp:1821
#38 0x00007f7d3bc53d83 in postEventSourceDispatch(GSource*, GSourceFunc, gpointer) (s=0x1b69db0) at kernel/qeventdispatcher_glib.cpp:277
#39 0x00007f7d38874faf in g_main_context_dispatch () at /lib64/libglib-2.0.so.0
#40 0x00007f7d388ca2c8 in g_main_context_iterate.constprop () at /lib64/libglib-2.0.so.0
#41 0x00007f7d38872940 in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#42 0x00007f7d3bc534a6 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x1b6ed00, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#43 0x00007f7d3bbfe03b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffee8838fc0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#44 0x00007f7d3bc05b42 in QCoreApplication::exec() () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#45 0x00007f7d3c012a0c in QGuiApplication::exec() () at kernel/qguiapplication.cpp:1867
#46 0x00007f7d3cae62f5 in QApplication::exec() () at kernel/qapplication.cpp:2829
#47 0x0000000000422c08 in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /home/nico/kde/src/plasma-workspace/shell/main.cpp:244
[Inferior 1 (process 830300) detached]

SOFTWARE/OS VERSIONS
KDE Plasma Version: master
KDE Frameworks Version: master
Qt Version: 5.15.5-kde

ADDITIONAL INFORMATION
Wayland
Comment 1 Nicolas Fella 2022-08-30 10:24:40 UTC
The extra panel doesn't seem to be relevant, it happens without that as well
Comment 2 Nate Graham 2022-08-30 21:54:44 UTC
Cannot reproduce with current git master on Wayland with an HDMI monitor.