Summary: | Spectacle crashes in QWindowSystemInterface::handleScreenRemoved() when disabling screen where app is opened | ||
---|---|---|---|
Product: | [Applications] Spectacle | Reporter: | postix <postix> |
Component: | General | Assignee: | Noah Davis <noahadvs> |
Status: | RESOLVED DUPLICATE | ||
Severity: | crash | CC: | arcadiy, boredsquirrel, cyrond, david2005thomas, dvdmerwe, fkwilcz2, heath.mitchell27, jan.hegner, jlp, kde, kde, mippo9, nate, oper.kh, sitter |
Priority: | HI | Keywords: | wayland |
Version: | 23.04.3 | ||
Target Milestone: | --- | ||
Platform: | openSUSE | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: | New crash information added by DrKonqi |
Description
postix
2023-05-09 12:44:57 UTC
Can reproduce 100% on Wayland. Haven't tried X11 due to multi-screen being mostly non-functional for me there because my screens need different scale factors t behave properly. *** Bug 469311 has been marked as a duplicate of this bug. *** *** Bug 470009 has been marked as a duplicate of this bug. *** *** Bug 469952 has been marked as a duplicate of this bug. *** Created attachment 159211 [details]
New crash information added by DrKonqi
spectacle (23.04.1) using Qt 5.15.9
Spectacle crashes when I unplug my second screen
-- Backtrace (Reduced):
#6 0x00007f530fb420e7 in QGuiApplication::screenRemoved(QScreen*) () at /usr/lib/libQt5Gui.so.5
#7 0x00007f530fb6a994 in QScreen::~QScreen() () at /usr/lib/libQt5Gui.so.5
#8 0x00007f530fb289e7 in QWindowSystemInterface::handleScreenRemoved(QPlatformScreen*) () at /usr/lib/libQt5Gui.so.5
#9 0x00007f53117837be in QtWaylandClient::QWaylandDisplay::registry_global_remove(unsigned int) (this=0x55ece71e8080, id=58) at /usr/src/debug/qt5-wayland/qtwayland/src/client/qwaylanddisplay.cpp:571
#10 0x00007f5310d584f6 in ffi_call_unix64 () at ../src/x86/unix64.S:104
*** Bug 468694 has been marked as a duplicate of this bug. *** Turns out this is not a specific Spectacle issue, Dolphin 23.04.1 just crashed for me with the same stacktrace under the same conditions: ``` Application: Dolphin (dolphin), signal: Segmentation fault Content of s_kcrashErrorMessage: std::unique_ptr<char []> = {get() = <optimized out>} [KCrash Handler] #6 QWeakPointer<QObject>::internalData (this=0xb8cf253e26b7ff25) at ../../include/QtCore/../../src/corelib/tools/qsharedpointer_impl.h:696 #7 QPointer<QScreen>::data (this=0xb8cf253e26b7ff25) at ../../include/QtCore/../../src/corelib/kernel/qpointer.h:77 #8 QPointer<QScreen>::operator QScreen* (this=0xb8cf253e26b7ff25) at ../../include/QtCore/../../src/corelib/kernel/qpointer.h:83 #9 QPlatformScreen::screen (this=this@entry=0x562d512428d0) at kernel/qplatformscreen.cpp:154 #10 0x00007f4a5a927013 in QtWaylandClient::QWaylandWindow::handleScreensChanged (this=0x562d50dd92c0) at qwaylandwindow.cpp:1047 #11 0x00007f4a5cf25232 in QtPrivate::QSlotObjectBase::call (a=0x7ffe8c1efe30, r=0x562d50dd92c0, this=0x562d50d3e530) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398 #12 doActivate<false> (sender=0x562d5136b130, signal_index=3, argv=0x7ffe8c1efe30) at kernel/qobject.cpp:3923 #13 0x00007f4a59ca08d2 in ffi_call_unix64 () at ../src/x86/unix64.S:104 #14 0x00007f4a59c9d24f in ffi_call_int (cif=<optimized out>, fn=<optimized out>, rvalue=<optimized out>, avalue=<optimized out>, closure=<optimized out>) at ../src/x86/ffi64.c:673 #15 0x00007f4a59c9fe96 in ffi_call (cif=cif@entry=0x7ffe8c1f0040, fn=<optimized out>, rvalue=rvalue@entry=0x0, avalue=avalue@entry=0x7ffe8c1f0110) at ../src/x86/ffi64.c:710 #16 0x00007f4a5ae13a23 in wl_closure_invoke (closure=closure@entry=0x7f4a48003110, target=<optimized out>, target@entry=0x562d50be4df0, opcode=opcode@entry=0, data=<optimized out>, flags=1) at ../src/connection.c:1025 #17 0x00007f4a5ae14203 in dispatch_event (display=display@entry=0x562d5076b1a0, queue=0x562d5076b290) at ../src/wayland-client.c:1631 #18 0x00007f4a5ae14494 in dispatch_queue (queue=0x562d5076b290, display=0x562d5076b1a0) at ../src/wayland-client.c:1777 #19 wl_display_dispatch_queue_pending (display=0x562d5076b1a0, queue=0x562d5076b290) at ../src/wayland-client.c:2019 #20 0x00007f4a5a92178d in QtWaylandClient::QWaylandDisplay::blockingReadEvents (this=0x562d50766970) at qwaylanddisplay.cpp:444 #21 0x00007f4a5a9181d1 in QtWaylandClient::QWaylandShmBackingStore::resize (this=this@entry=0x562d50c6a450, size=...) at qwaylandshmbackingstore.cpp:295 #22 0x00007f4a5a9183cd in QtWaylandClient::QWaylandShmBackingStore::ensureSize (this=this@entry=0x562d50c6a450) at qwaylandshmbackingstore.cpp:212 #23 0x00007f4a5a9183f9 in QtWaylandClient::QWaylandShmBackingStore::beginPaint (this=this@entry=0x562d50c6a450, region=...) at qwaylandshmbackingstore.cpp:187 #24 0x00007f4a5d551ccf in QBackingStore::beginPaint (this=0x562d50be5a10, region=...) at painting/qbackingstore.cpp:138 #25 0x00007f4a5dbb635a in QWidgetRepaintManager::paintAndFlush (this=0x562d50a708d0) at kernel/qwidgetrepaintmanager.cpp:989 #26 0x00007f4a5dbe7406 in QWidget::event (this=0x562d5099de50, event=0x562d51254b50) at kernel/qwidget.cpp:8990 #27 0x00007f4a5e94f6a9 in KXmlGuiWindow::event (this=0x562d5099de50, ev=0x562d51254b50) at /usr/src/debug/kxmlgui-5.106.0/src/kxmlguiwindow.cpp:220 #28 0x00007f4a5dba51ae in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x562d5099de50, e=0x562d51254b50) at kernel/qapplication.cpp:3640 #29 0x00007f4a5ceec978 in QCoreApplication::notifyInternal2 (receiver=0x562d5099de50, event=0x562d51254b50) at kernel/qcoreapplication.cpp:1064 #30 0x00007f4a5ceeff71 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x562d5099de50, event_type=77, data=0x562d5073af50) at kernel/qcoreapplication.cpp:1821 #31 0x00007f4a5ded63f3 in QGraphicsViewPrivate::dispatchPendingUpdateRequests (this=<optimized out>) at ../../include/QtWidgets/5.15.9/QtWidgets/private/../../../../../src/widgets/graphicsview/qgraphicsview_p.h:191 #32 QGraphicsViewPrivate::dispatchPendingUpdateRequests (this=0x562d512137e0) at ../../include/QtWidgets/5.15.9/QtWidgets/private/../../../../../src/widgets/graphicsview/qgraphicsview_p.h:186 #33 QGraphicsScenePrivate::_q_processDirtyItems (this=0x562d50d3c0c0) at graphicsview/qgraphicsscene.cpp:516 #34 0x00007f4a5cf18c50 in QObject::event (this=0x562d50f27790, e=0x562d512e7200) at kernel/qobject.cpp:1347 #35 0x00007f4a5dba51ae in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x562d50f27790, e=0x562d512e7200) at kernel/qapplication.cpp:3640 #36 0x00007f4a5ceec978 in QCoreApplication::notifyInternal2 (receiver=0x562d50f27790, event=0x562d512e7200) at kernel/qcoreapplication.cpp:1064 #37 0x00007f4a5ceeff71 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x562d5073af50) at kernel/qcoreapplication.cpp:1821 #38 0x00007f4a5cf46713 in postEventSourceDispatch (s=0x562d507808d0) at kernel/qeventdispatcher_glib.cpp:277 #39 0x00007f4a5ab168d8 in g_main_dispatch (context=0x7f4a50000ee0) at ../glib/gmain.c:3460 #40 g_main_context_dispatch (context=context@entry=0x7f4a50000ee0) at ../glib/gmain.c:4200 #41 0x00007f4a5ab16ce8 in g_main_context_iterate (context=context@entry=0x7f4a50000ee0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4276 #42 0x00007f4a5ab16d7c in g_main_context_iteration (context=0x7f4a50000ee0, may_block=1) at ../glib/gmain.c:4343 #43 0x00007f4a5cf45f26 in QEventDispatcherGlib::processEvents (this=0x562d50784ef0, flags=...) at kernel/qeventdispatcher_glib.cpp:423 #44 0x00007f4a5ceeb40b in QEventLoop::exec (this=this@entry=0x7ffe8c1f0d20, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69 #45 0x00007f4a5cef38a0 in QCoreApplication::exec () at ../../include/QtCore/../../src/corelib/global/qflags.h:121 #46 0x00007f4a5d36fe3c in QGuiApplication::exec () at kernel/qguiapplication.cpp:1870 #47 0x00007f4a5dba5125 in QApplication::exec () at kernel/qapplication.cpp:2832 #48 0x0000562d4feaf647 in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/dolphin-23.04.1/src/main.cpp:232 [Inferior 1 (process 6929) detached] ``` *** Bug 473072 has been marked as a duplicate of this bug. *** *** Bug 473114 has been marked as a duplicate of this bug. *** I guess it's a Qt bug that someone will need to report, assuming it's not already fixed in Qt 6. *** Bug 471346 has been marked as a duplicate of this bug. *** *** Bug 472011 has been marked as a duplicate of this bug. *** I've had this for a few weeks, but it is compositor related, not Spectacle specific. Spectacle's rectangular area capture triggers it. I've also had it happen though when I: 1. Go into Manjaro Settings / Display and Monitor / and click on Compositor (tried the various options there but no fix). 2. Krunner (but Albert and ULauncher work fine) All the above result in a 30 sec or so freeze before activating. If I disable Compositor, they all work instantly as expected. *** This bug has been marked as a duplicate of bug 468694 *** |