Bug 419747

Summary: Plasma crashed on switching between "Switch to laptop screen" and "Switch to external screen" multi-monitor modes
Product: [Plasma] plasmashell Reporter: Patrick Silva <bugseforuns>
Component: generalAssignee: David Edmundson <kde>
Status: RESOLVED DUPLICATE    
Severity: crash CC: plasma-bugs
Priority: NOR Keywords: drkonqi
Version: master   
Target Milestone: 1.0   
Platform: unspecified   
OS: Linux   
Latest Commit: Version Fixed In:

Description Patrick Silva 2020-04-06 18:05:52 UTC
Application: plasmashell (5.18.80)

Qt Version: 5.14.1
Frameworks Version: 5.69.0
Operating System: Linux 5.3.0-45-generic x86_64
Windowing system: Wayland
Distribution: KDE neon Unstable Edition

-- Information about the crash:
- What I was doing when the application crashed:
Wayland session, external monitor connected to hdmi port, I switched between "Switch to laptop screen" and "Switch to external screen" multi-monitor modes, Plasma crashed.

The crash can be reproduced sometimes.

-- Backtrace:
Application: Plasma (plasmashell), signal: Segmentation fault
Content of s_kcrashErrorMessage: [Current thread is 1 (Thread 0x7f9624af1c80 (LWP 1805))]
[KCrash Handler]
#7  0x00007f961f0bfb24 in QWeakPointer<QObject>::internalData() const (this=0x0) at ../../include/QtCore/../../src/corelib/tools/qsharedpointer_impl.h:701
#8  0x00007f961f0bfb24 in QPointer<QScreen>::data() const (this=0x0) at ../../include/QtCore/../../src/corelib/kernel/qpointer.h:77
#9  0x00007f961f0bfb24 in QPointer<QScreen>::operator QScreen*() const (this=0x0) at ../../include/QtCore/../../src/corelib/kernel/qpointer.h:83
#10 0x00007f961f0bfb24 in QPlatformScreen::screen() const (this=this@entry=0x55a7a4a72d70) at kernel/qplatformscreen.cpp:154
#11 0x00007f9611eda6a0 in QtWaylandClient::QWaylandWindow::handleScreensChanged() (this=0x55a7a6d36700) at qwaylandwindow.cpp:969
#12 0x00007f961eb16fe7 in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7ffd422bca90, r=0x55a7a6d36700, this=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:394
#13 0x00007f961eb16fe7 in doActivate<false>(QObject*, int, void**) (sender=0x55a7a943d160, signal_index=3, argv=0x7ffd422bca90) at kernel/qobject.cpp:3870
#14 0x00007f961eb118a2 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=sender@entry=0x55a7a943d160, m=m@entry=0x7f9612198d20 <QtWaylandClient::QWaylandSurface::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x0) at kernel/qobject.cpp:3930
#15 0x00007f9611ef8840 in QtWaylandClient::QWaylandSurface::screensChanged() (this=this@entry=0x55a7a943d160) at .moc/moc_qwaylandsurface_p.cpp:155
#16 0x00007f9611ee0c61 in QtWaylandClient::QWaylandSurface::surface_leave(wl_output*) (this=0x55a7a943d160, output=0x55a7a4a72b80) at qwaylandsurface.cpp:117
#17 0x00007f9617b4fdae in ffi_call_unix64 () at /usr/lib/x86_64-linux-gnu/libffi.so.6
#18 0x00007f9617b4f71f in ffi_call () at /usr/lib/x86_64-linux-gnu/libffi.so.6
#19 0x00007f961d2e3e24 in wl_closure_invoke (closure=closure@entry=0x55a7ba3ff250, flags=flags@entry=1, target=<optimized out>, target@entry=0x55a7a4b4baf0, opcode=opcode@entry=1, data=<optimized out>) at ../src/connection.c:1006
#20 0x00007f961d2e0659 in dispatch_event (display=display@entry=0x55a7a4a70890, queue=<optimized out>) at ../src/wayland-client.c:1427
#21 0x00007f961d2e1b24 in dispatch_queue (queue=0x55a7a4a70958, display=0x55a7a4a70890) at ../src/wayland-client.c:1573
#22 0x00007f961d2e1b24 in wl_display_dispatch_queue_pending (display=0x55a7a4a70890, queue=0x55a7a4a70958) at ../src/wayland-client.c:1815
#23 0x00007f961d2e1b7c in wl_display_dispatch_pending (display=<optimized out>) at ../src/wayland-client.c:1878
#24 0x00007f9611ed2642 in QtWaylandClient::QWaylandDisplay::flushRequests() (this=0x55a7a4a70750) at qwaylanddisplay.cpp:208
#25 0x00007f961eb16dc9 in doActivate<false>(QObject*, int, void**) (sender=0x55a7a4ad90e0, signal_index=4, argv=0x7ffd422bcfb0) at kernel/qobject.cpp:3882
#26 0x00007f961eb118a2 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=sender@entry=0x55a7a4ad90e0, m=m@entry=0x7f961efa9240 <QAbstractEventDispatcher::staticMetaObject>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x0) at kernel/qobject.cpp:3930
#27 0x00007f961ead84b3 in QAbstractEventDispatcher::awake() (this=this@entry=0x55a7a4ad90e0) at .moc/moc_qabstracteventdispatcher.cpp:149
#28 0x00007f961eb3b0fb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x55a7a4ad90e0, flags=...) at kernel/qeventdispatcher_glib.cpp:430
#29 0x00007f961eada63a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffd422bd0d0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#30 0x00007f961eae3db0 in QCoreApplication::exec() () at kernel/qcoreapplication.cpp:1400
#31 0x000055a7a36e2058 in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at ./shell/main.cpp:220

Possible duplicates by query: bug 419741, bug 419492, bug 419060, bug 418477, bug 416347.

Reported using DrKonqi
Comment 1 Christoph Feck 2020-04-21 08:23:20 UTC

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