Bug 489635 - In Plasma version 6.1.0 and higher, krunner crashes in QtWaylandClient::QWaylandWindow::handleScreensChanged() when the primary monitor gets disconnected
Summary: In Plasma version 6.1.0 and higher, krunner crashes in QtWaylandClient::QWayl...
Status: RESOLVED DUPLICATE of bug 489072
Alias: None
Product: krunner
Classification: Plasma
Component: general (show other bugs)
Version: 6.1.1
Platform: Other Linux
: NOR crash
Target Milestone: ---
Assignee: Plasma Bugs List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-07-02 20:32 UTC by Pavel Urusov
Modified: 2024-07-02 20:50 UTC (History)
3 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 Pavel Urusov 2024-07-02 20:32:36 UTC
SUMMARY
KRunner crashes when the primary monitor gets disconnected from the system. Please take note that it crashes only if it was used previously during the session; if it's simply running in the background, it doesn't crash.

STEPS TO REPRODUCE
1. Log into the system and use KRunner to search for anything
2. Physically unplug the monitors plugged into the system (or unplug them from the mains socket)
3. Reconnect the monitors
4. Observe the issue

OBSERVED RESULT
KRunner crashes.

EXPECTED RESULT
KRunner does not crash.

SOFTWARE/OS VERSIONS
Operating System: openSUSE Tumbleweed 20240701
KDE Plasma Version: 6.1.1
KDE Frameworks Version: 6.3.0
Qt Version: 6.7.2
Kernel Version: 6.9.7-1-default (64-bit)
Graphics Platform: Wayland
Processors: 20 × 12th Gen Intel® Core™ i7-12700
Memory: 31.1 GiB of RAM
Graphics Processor: AMD Radeon RX 560 Series


ADDITIONAL INFORMATION

#0  __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=11, no_tid=no_tid@entry=0)
    at pthread_kill.c:44
#1  0x00007fb9d6a94a63 in __pthread_kill_internal (signo=11, threadid=<optimized out>) at pthread_kill.c:78
#2  0x00007fb9d6a41176 in __GI_raise (sig=11) at ../sysdeps/posix/raise.c:26
#3  0x00007fb9d9b24c03 in KCrash::defaultCrashHandler(int) () from /lib64/libKF6Crash.so.6
#4  <signal handler called>
#5  QScopedPointer<QPlatformScreenPrivate, QScopedPointerDeleter<QPlatformScreenPrivate> >::get (this=0x8)
    at /usr/src/debug/qtbase-everywhere-src-6.7.2/src/corelib/tools/qscopedpointer.h:110
#6  qGetPtrHelper<QScopedPointer<QPlatformScreenPrivate, QScopedPointerDeleter<QPlatformScreenPrivate> > const> (
    ptr=...) at /usr/src/debug/qtbase-everywhere-src-6.7.2/src/corelib/global/qtclasshelpermacros.h:79
#7  QPlatformScreen::d_func (this=0x0)
    at /usr/src/debug/qtbase-everywhere-src-6.7.2/src/gui/kernel/qplatformscreen.h:45
#8  QPlatformScreen::screen (this=0x0)
    at /usr/src/debug/qtbase-everywhere-src-6.7.2/src/gui/kernel/qplatformscreen.cpp:115
#9  0x00007fb9d78ee055 in QtWaylandClient::QWaylandWindow::handleScreensChanged() ()
   from /lib64/libQt6WaylandClient.so.6
#10 0x00007fb9d73e7f90 in QtPrivate::QSlotObjectBase::call (a=0x7ffe04dd6928, r=0x563a772a1bc0, 
    this=0x563a772541e0) at /usr/src/debug/qtbase-everywhere-src-6.7.2/src/corelib/kernel/qobjectdefs_impl.h:469
#11 doActivate<false> (sender=0x563a770fc6f0, signal_index=3, argv=0x7ffe04dd6928)
    at /usr/src/debug/qtbase-everywhere-src-6.7.2/src/corelib/kernel/qobject.cpp:4086
#12 0x00007fb9d73e7f90 in QtPrivate::QSlotObjectBase::call (a=0x7ffe04dd6a70, r=0x563a770fc6f0, 
    this=0x563a76e568e0) at /usr/src/debug/qtbase-everywhere-src-6.7.2/src/corelib/kernel/qobjectdefs_impl.h:469
#13 doActivate<false> (sender=0x7ffe04dd7420, signal_index=9, argv=0x7ffe04dd6a70)
    at /usr/src/debug/qtbase-everywhere-src-6.7.2/src/corelib/kernel/qobject.cpp:4086
#14 0x00007fb9d7bf26d2 in QGuiApplication::screenAdded (this=<optimized out>, _t1=<optimized out>)
    at /usr/src/debug/qtbase-everywhere-src-6.7.2/build/src/gui/Gui_autogen/include/moc_qguiapplication.cpp:421
#15 0x00007fb9d78c3b0d in QtWaylandClient::QWaylandDisplay::handleScreenInitialized(QtWaylandClient::QWaylandScreen*) () from /lib64/libQt6WaylandClient.so.6
#16 0x00007fb9d78e49d3 in QtWaylandClient::QWaylandScreen::maybeInitialize() ()
   from /lib64/libQt6WaylandClient.so.6
#17 0x00007fb9d5bbe972 in ffi_call_unix64 () at ../src/x86/unix64.S:104
#18 0x00007fb9d5bbb2df in ffi_call_int (cif=cif@entry=0x7ffe04dd6cb0, fn=<optimized out>, rvalue=<optimized out>, 
    avalue=<optimized out>, closure=closure@entry=0x0) at ../src/x86/ffi64.c:673
#19 0x00007fb9d5bbdf36 in ffi_call (cif=cif@entry=0x7ffe04dd6cb0, fn=<optimized out>, rvalue=rvalue@entry=0x0, 
    avalue=avalue@entry=0x7ffe04dd6d80) at ../src/x86/ffi64.c:710
#20 0x00007fb9d9919bb3 in wl_closure_invoke (closure=closure@entry=0x7fb9c4003310, target=<optimized out>, 
    target@entry=0x563a769875c0, opcode=opcode@entry=2, data=<optimized out>, flags=1) at ../src/connection.c:1228
#21 0x00007fb9d991a369 in dispatch_event (display=display@entry=0x563a7697a710, queue=queue@entry=0x563a7697a808)
    at ../src/wayland-client.c:1670
#22 0x00007fb9d991a72b in dispatch_queue (queue=0x563a7697a808, display=0x563a7697a710)
    at ../src/wayland-client.c:1816
#23 wl_display_dispatch_queue_pending (display=0x563a7697a710, queue=0x563a7697a808)
    at ../src/wayland-client.c:2058
#24 0x00007fb9d78b9c2a in QtWaylandClient::QWaylandDisplay::flushRequests() ()
   from /lib64/libQt6WaylandClient.so.6
#25 0x00007fb9d73d1e1b in QObject::event (this=0x563a7697a4e0, e=0x7fb9c4002fa0)
    at /usr/src/debug/qtbase-everywhere-src-6.7.2/src/corelib/kernel/qobject.cpp:1452
#26 0x00007fb9d85c2f6e in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib64/libQt6Widgets.so.6
#27 0x00007fb9d738ec30 in QCoreApplication::notifyInternal2 (receiver=0x563a7697a4e0, event=0x7fb9c4002fa0)
    at /usr/src/debug/qtbase-everywhere-src-6.7.2/src/corelib/kernel/qcoreapplication.cpp:1142
#28 0x00007fb9d738ec69 in QCoreApplication::sendEvent (receiver=<optimized out>, event=<optimized out>)
    at /usr/src/debug/qtbase-everywhere-src-6.7.2/src/corelib/kernel/qcoreapplication.cpp:1583
#29 0x00007fb9d738ef90 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, 
    data=0x563a7696cfa0)
    at /usr/src/debug/qtbase-everywhere-src-6.7.2/src/corelib/kernel/qcoreapplication.cpp:1940
#30 0x00007fb9d75c2fe3 in postEventSourceDispatch (s=0x563a76977710)
--Type <RET> for more, q to quit, c to continue without paging--
    at /usr/src/debug/qtbase-everywhere-src-6.7.2/src/corelib/kernel/qeventdispatcher_glib.cpp:244
#31 0x00007fb9d6086740 in g_main_dispatch (context=0x7fb9cc000f00) at ../glib/gmain.c:3344
#32 g_main_context_dispatch_unlocked (context=context@entry=0x7fb9cc000f00) at ../glib/gmain.c:4152
#33 0x00007fb9d6088388 in g_main_context_iterate_unlocked (context=context@entry=0x7fb9cc000f00, 
    block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4217
#34 0x00007fb9d6088a3c in g_main_context_iteration (context=0x7fb9cc000f00, may_block=1) at ../glib/gmain.c:4282
#35 0x00007fb9d75c1adc in QEventDispatcherGlib::processEvents (this=0x563a7698ae60, flags=...)
    at /usr/src/debug/qtbase-everywhere-src-6.7.2/src/corelib/kernel/qeventdispatcher_glib.cpp:394
#36 0x00007fb9d73993db in QEventLoop::exec (this=0x7ffe04dd7310, flags=...)
    at /usr/src/debug/qtbase-everywhere-src-6.7.2/src/corelib/global/qflags.h:34
#37 0x00007fb9d7392bb6 in QCoreApplication::exec ()
    at /usr/src/debug/qtbase-everywhere-src-6.7.2/src/corelib/global/qflags.h:74
#38 0x0000563a44a8339d in ?? ()
#39 0x00007fb9d6a2a1f0 in __libc_start_call_main (main=main@entry=0x563a44a81d10, argc=argc@entry=2, 
    argv=argv@entry=0x7ffe04dd7858) at ../sysdeps/nptl/libc_start_call_main.h:58
#40 0x00007fb9d6a2a2b9 in __libc_start_main_impl (main=0x563a44a81d10, argc=2, argv=0x7ffe04dd7858, 
    init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffe04dd7848)
    at ../csu/libc-start.c:360
#41 0x0000563a44a83925 in ?? ()
Comment 1 Nate Graham 2024-07-02 20:50:08 UTC

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