Bug 416540

Summary: Plasma crashes when deleting sticky note from desktop
Product: [Plasma] plasmashell Reporter: Erik Quaeghebeur <bugs.kde.org>
Component: generalAssignee: David Edmundson <kde>
Status: RESOLVED DUPLICATE    
Severity: crash CC: mcmailface, nate, plasma-bugs
Priority: NOR Keywords: drkonqi
Version: 5.17.4   
Target Milestone: 1.0   
Platform: Gentoo Packages   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: New crash information added by DrKonqi

Description Erik Quaeghebeur 2020-01-21 15:44:09 UTC
Application: plasmashell (5.17.4)

Qt Version: 5.13.2
Frameworks Version: 5.64.0
Operating System: Linux 4.19.86-gentoo x86_64
Distribution: Gentoo/Linux

-- Information about the crash:
- What I was doing when the application crashed:
I do not know how I did it, but I apparently ‘pasted’ some content on the desktop, creating a sticky note. After pressing left-mouse-button long, the controls appeared and I could delete the note from the desktop. Then Plasma apparently crashed.

-- Backtrace:
Application: Plasma (plasmashell), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f6601fabd40 (LWP 20056))]

Thread 13 (Thread 0x7f65c6d35700 (LWP 508632)):
#0  0x00007f6607828e57 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f66085d7b03 in QWaitConditionPrivate::wait(QDeadlineTimer) (deadline=..., this=0x5575651900f0) at thread/qwaitcondition_unix.cpp:146
#2  0x00007f66085d7b03 in QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=<optimized out>, mutex=0x7f65f8025330, deadline=...) at thread/qwaitcondition_unix.cpp:225
#3  0x00007f66085d7b89 in QWaitCondition::wait(QMutex*, unsigned long) (this=0x7f65f8025338, mutex=0x7f65f8025330, time=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qdeadlinetimer.h:68
#4  0x00007f660a18fa09 in  () at /usr/lib64/libQt5Quick.so.5
#5  0x00007f660a18fcad in  () at /usr/lib64/libQt5Quick.so.5
#6  0x00007f66085d2442 in QThreadPrivate::start(void*) (arg=0x7f65f80252b0) at thread/qthread_unix.cpp:360
#7  0x00007f66078223a7 in start_thread () at /lib64/libpthread.so.0
#8  0x00007f66081c824f in clone () at /lib64/libc.so.6

Thread 12 (Thread 0x7f65c5b51700 (LWP 108282)):
#0  0x00007f6607828e57 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f66085d7b03 in QWaitConditionPrivate::wait(QDeadlineTimer) (deadline=..., this=0x55755e3fc3d0) at thread/qwaitcondition_unix.cpp:146
#2  0x00007f66085d7b03 in QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=<optimized out>, mutex=0x5575620f4200, deadline=...) at thread/qwaitcondition_unix.cpp:225
#3  0x00007f66085d7b89 in QWaitCondition::wait(QMutex*, unsigned long) (this=0x5575620f4208, mutex=0x5575620f4200, time=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qdeadlinetimer.h:68
#4  0x00007f660a18fa09 in  () at /usr/lib64/libQt5Quick.so.5
#5  0x00007f660a18fcad in  () at /usr/lib64/libQt5Quick.so.5
#6  0x00007f66085d2442 in QThreadPrivate::start(void*) (arg=0x5575620f4180) at thread/qthread_unix.cpp:360
#7  0x00007f66078223a7 in start_thread () at /lib64/libpthread.so.0
#8  0x00007f66081c824f in clone () at /lib64/libc.so.6

Thread 11 (Thread 0x7f65c64c3700 (LWP 28879)):
#0  0x00007f6607828e57 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f66085d7b03 in QWaitConditionPrivate::wait(QDeadlineTimer) (deadline=..., this=0x55755ee82140) at thread/qwaitcondition_unix.cpp:146
#2  0x00007f66085d7b03 in QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=<optimized out>, mutex=0x55755f560b60, deadline=...) at thread/qwaitcondition_unix.cpp:225
#3  0x00007f66085d7b89 in QWaitCondition::wait(QMutex*, unsigned long) (this=0x55755f560b68, mutex=0x55755f560b60, time=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qdeadlinetimer.h:68
#4  0x00007f660a18fa09 in  () at /usr/lib64/libQt5Quick.so.5
#5  0x00007f660a18fcad in  () at /usr/lib64/libQt5Quick.so.5
#6  0x00007f66085d2442 in QThreadPrivate::start(void*) (arg=0x55755f560ae0) at thread/qthread_unix.cpp:360
#7  0x00007f66078223a7 in start_thread () at /lib64/libpthread.so.0
#8  0x00007f66081c824f in clone () at /lib64/libc.so.6

Thread 10 (Thread 0x7f65d4bc6700 (LWP 21475)):
#0  0x00007f6607828e57 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f66085d7b03 in QWaitConditionPrivate::wait(QDeadlineTimer) (deadline=..., this=0x557561e140f0) at thread/qwaitcondition_unix.cpp:146
#2  0x00007f66085d7b03 in QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=<optimized out>, mutex=0x55755dd4f490, deadline=...) at thread/qwaitcondition_unix.cpp:225
#3  0x00007f66085d7b89 in QWaitCondition::wait(QMutex*, unsigned long) (this=0x55755dd4f498, mutex=0x55755dd4f490, time=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qdeadlinetimer.h:68
#4  0x00007f660a18fa09 in  () at /usr/lib64/libQt5Quick.so.5
#5  0x00007f660a18fcad in  () at /usr/lib64/libQt5Quick.so.5
#6  0x00007f66085d2442 in QThreadPrivate::start(void*) (arg=0x55755dd4f410) at thread/qthread_unix.cpp:360
#7  0x00007f66078223a7 in start_thread () at /lib64/libpthread.so.0
#8  0x00007f66081c824f in clone () at /lib64/libc.so.6

Thread 9 (Thread 0x7f65d6195700 (LWP 20440)):
#0  0x00007f6607828e57 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f66085d7b03 in QWaitConditionPrivate::wait(QDeadlineTimer) (deadline=..., this=0x55755c589950) at thread/qwaitcondition_unix.cpp:146
#2  0x00007f66085d7b03 in QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=<optimized out>, mutex=0x55755c0eeb70, deadline=...) at thread/qwaitcondition_unix.cpp:225
#3  0x00007f66085d7b89 in QWaitCondition::wait(QMutex*, unsigned long) (this=0x55755c0eeb78, mutex=0x55755c0eeb70, time=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qdeadlinetimer.h:68
#4  0x00007f660a18fa09 in  () at /usr/lib64/libQt5Quick.so.5
#5  0x00007f660a18fcad in  () at /usr/lib64/libQt5Quick.so.5
#6  0x00007f66085d2442 in QThreadPrivate::start(void*) (arg=0x55755c0eeaf0) at thread/qthread_unix.cpp:360
#7  0x00007f66078223a7 in start_thread () at /lib64/libpthread.so.0
#8  0x00007f66081c824f in clone () at /lib64/libc.so.6

Thread 8 (Thread 0x7f65d69ac700 (LWP 20292)):
#0  0x00007f66081b7ee0 in read () at /lib64/libc.so.6
#1  0x00007f66067e6eff in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007f66067a026e in g_main_context_check () at /usr/lib64/libglib-2.0.so.0
#3  0x00007f66067a06e3 in  () at /usr/lib64/libglib-2.0.so.0
#4  0x00007f66067a085f in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#5  0x00007f66087c336b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f65d0000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#6  0x00007f660876e53b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f65d69abce0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:140
#7  0x00007f66085d13b1 in QThread::exec() (this=<optimized out>) at ../../include/QtCore/../../src/corelib/global/qflags.h:120
#8  0x00007f65d76b7368 in KCupsConnection::run() () at /usr/lib64/libkcupslib.so
#9  0x00007f66085d2442 in QThreadPrivate::start(void*) (arg=0x55755c4b2a90) at thread/qthread_unix.cpp:360
#10 0x00007f66078223a7 in start_thread () at /lib64/libpthread.so.0
#11 0x00007f66081c824f in clone () at /lib64/libc.so.6

Thread 7 (Thread 0x7f65e4b3c700 (LWP 20175)):
#0  0x00007f66081bc5e3 in poll () at /lib64/libc.so.6
#1  0x00007f66067a073e in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007f66067a085f in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#3  0x00007f66087c336b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f65dc000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#4  0x00007f660876e53b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f65e4b3bd20, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:140
#5  0x00007f66085d13b1 in QThread::exec() (this=<optimized out>) at ../../include/QtCore/../../src/corelib/global/qflags.h:120
#6  0x00007f66085d2442 in QThreadPrivate::start(void*) (arg=0x55755c06a5d0) at thread/qthread_unix.cpp:360
#7  0x00007f66078223a7 in start_thread () at /lib64/libpthread.so.0
#8  0x00007f66081c824f in clone () at /lib64/libc.so.6

Thread 6 (Thread 0x7f65ed9f7700 (LWP 20145)):
#0  0x00007f6607828e57 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f66085d7b03 in QWaitConditionPrivate::wait(QDeadlineTimer) (deadline=..., this=0x55755a746d70) at thread/qwaitcondition_unix.cpp:146
#2  0x00007f66085d7b03 in QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=<optimized out>, mutex=0x7f65f8009000, deadline=...) at thread/qwaitcondition_unix.cpp:225
#3  0x00007f66085d7b89 in QWaitCondition::wait(QMutex*, unsigned long) (this=0x7f65f8009008, mutex=0x7f65f8009000, time=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qdeadlinetimer.h:68
#4  0x00007f660a18fa09 in  () at /usr/lib64/libQt5Quick.so.5
#5  0x00007f660a18fcad in  () at /usr/lib64/libQt5Quick.so.5
#6  0x00007f66085d2442 in QThreadPrivate::start(void*) (arg=0x7f65f8008f80) at thread/qthread_unix.cpp:360
#7  0x00007f66078223a7 in start_thread () at /lib64/libpthread.so.0
#8  0x00007f66081c824f in clone () at /lib64/libc.so.6

Thread 5 (Thread 0x7f65efe9a700 (LWP 20124)):
#0  0x00007f6607828e57 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f65fc4bb38b in  () at /usr/lib64/dri/i965_dri.so
#2  0x00007f65fc4bafa7 in  () at /usr/lib64/dri/i965_dri.so
#3  0x00007f66078223a7 in start_thread () at /lib64/libpthread.so.0
#4  0x00007f66081c824f in clone () at /lib64/libc.so.6

Thread 4 (Thread 0x7f65fdfb6700 (LWP 20117)):
#0  0x00007f66081b7ee0 in read () at /lib64/libc.so.6
#1  0x00007f66067e6eff in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007f66067a026e in g_main_context_check () at /usr/lib64/libglib-2.0.so.0
#3  0x00007f66067a06e3 in  () at /usr/lib64/libglib-2.0.so.0
#4  0x00007f66067a085f in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#5  0x00007f66087c336b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f65f4000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#6  0x00007f660876e53b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f65fdfb5d00, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:140
#7  0x00007f66085d13b1 in QThread::exec() (this=<optimized out>) at ../../include/QtCore/../../src/corelib/global/qflags.h:120
#8  0x00007f6609e256c5 in  () at /usr/lib64/libQt5Qml.so.5
#9  0x00007f66085d2442 in QThreadPrivate::start(void*) (arg=0x557559ff9190) at thread/qthread_unix.cpp:360
#10 0x00007f66078223a7 in start_thread () at /lib64/libpthread.so.0
#11 0x00007f66081c824f in clone () at /lib64/libc.so.6

Thread 3 (Thread 0x7f65ff4b4700 (LWP 20069)):
#0  0x00007f66067eb3a4 in g_mutex_unlock () at /usr/lib64/libglib-2.0.so.0
#1  0x00007f66067a00e8 in g_main_context_check () at /usr/lib64/libglib-2.0.so.0
#2  0x00007f66067a06e3 in  () at /usr/lib64/libglib-2.0.so.0
#3  0x00007f66067a085f in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#4  0x00007f66087c336b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f65f0000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#5  0x00007f660876e53b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f65ff4b3cf0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:140
#6  0x00007f66085d13b1 in QThread::exec() (this=<optimized out>) at ../../include/QtCore/../../src/corelib/global/qflags.h:120
#7  0x00007f6608fbd4f6 in  () at /usr/lib64/libQt5DBus.so.5
#8  0x00007f66085d2442 in QThreadPrivate::start(void*) (arg=0x7f660903fd80) at thread/qthread_unix.cpp:360
#9  0x00007f66078223a7 in start_thread () at /lib64/libpthread.so.0
#10 0x00007f66081c824f in clone () at /lib64/libc.so.6

Thread 2 (Thread 0x7f6600093700 (LWP 20065)):
#0  0x00007f66081bc5e3 in poll () at /lib64/libc.so.6
#1  0x00007f660a78b7f7 in  () at /usr/lib64/libxcb.so.1
#2  0x00007f660a78d42a in xcb_wait_for_event () at /usr/lib64/libxcb.so.1
#3  0x00007f6601a045f0 in QXcbEventQueue::run() (this=0x557559f0afe0) at qxcbeventqueue.cpp:228
#4  0x00007f66085d2442 in QThreadPrivate::start(void*) (arg=0x557559f0afe0) at thread/qthread_unix.cpp:360
#5  0x00007f66078223a7 in start_thread () at /lib64/libpthread.so.0
#6  0x00007f66081c824f in clone () at /lib64/libc.so.6

Thread 1 (Thread 0x7f6601fabd40 (LWP 20056)):
[KCrash Handler]
#6  0x000055755de0e130 in  ()
#7  0x00007f66087785ba in QMetaObject::cast(QObject const*) const (this=0x7f660a470c00 <QQuickItem::staticMetaObject>, obj=0x55755f5c3910) at kernel/qmetaobject.cpp:381
#8  0x00007f65ff65f97c in QQuickShortcutContext::matcher(QObject*, Qt::ShortcutContext) () at /usr/lib64/libQt5QuickTemplates2.so.5
#9  0x00007f6608b6195a in QShortcutEntry::correctContext() const (this=0x55755c40ff18) at kernel/qshortcutmap.cpp:79
#10 0x00007f6608b6195a in QShortcutMap::find(QKeyEvent*, int) (this=this@entry=0x557559eedb00, e=e@entry=0x7ffe5859ef60, ignoredModifiers=ignoredModifiers@entry=0) at kernel/qshortcutmap.cpp:469
#11 0x00007f6608b6260c in QShortcutMap::nextState(QKeyEvent*) (this=this@entry=0x557559eedb00, e=e@entry=0x7ffe5859ef60) at kernel/qshortcutmap.cpp:380
#12 0x00007f6608b629e1 in QShortcutMap::tryShortcut(QKeyEvent*) (this=this@entry=0x557559eedb00, e=e@entry=0x7ffe5859ef60) at kernel/qshortcutmap.cpp:336
#13 0x00007f6608b1c271 in QWindowSystemInterface::handleShortcutEvent(QWindow*, unsigned long, int, QFlags<Qt::KeyboardModifier>, unsigned int, unsigned int, unsigned int, QString const&, bool, unsigned short) (window=<optimized out>, window@entry=0x55755a245110, timestamp=282709892, keyCode=86, modifiers=..., nativeScanCode=55, nativeVirtualKey=118, nativeModifiers=20, text=..., autorepeat=false, count=1) at kernel/qwindowsysteminterface.cpp:465
#14 0x00007f6608b36c6d in QGuiApplicationPrivate::processKeyEvent(QWindowSystemInterfacePrivate::KeyEvent*) (e=e@entry=0x5575658690f0) at kernel/qguiapplication.cpp:2216
#15 0x00007f6608b3be61 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) (e=e@entry=0x5575658690f0) at kernel/qguiapplication.cpp:1852
#16 0x00007f6608b1925b in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) (flags=flags@entry=...) at kernel/qwindowsysteminterface.cpp:1148
#17 0x00007f6601a055aa in xcbSourceDispatch(GSource*, GSourceFunc, gpointer) (source=<optimized out>) at qxcbeventdispatcher.cpp:105
#18 0x00007f66067a0544 in g_main_context_dispatch () at /usr/lib64/libglib-2.0.so.0
#19 0x00007f66067a07c8 in  () at /usr/lib64/libglib-2.0.so.0
#20 0x00007f66067a085f in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#21 0x00007f66087c3353 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x557559f503b0, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#22 0x00007f660876e53b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffe5859f310, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:140
#23 0x00007f66087761f2 in QCoreApplication::exec() () at ../../include/QtCore/../../src/corelib/global/qflags.h:120
#24 0x0000557559b92216 in  ()
#25 0x00007f66080e6f2b in __libc_start_main () at /lib64/libc.so.6
#26 0x0000557559b9264a in _start ()
[Inferior 1 (process 20056) detached]

Possible duplicates by query: bug 416521, bug 416520, bug 416465, bug 416455, bug 416435.

Reported using DrKonqi
Comment 1 Nate Graham 2020-01-21 17:28:06 UTC
> #8  0x00007f65ff65f97c in QQuickShortcutContext::matcher(QObject*, Qt::ShortcutContext) () at /usr/lib64/libQt5QuickTemplates2.so.5
More QShortcut shenanigans...
Comment 2 HM 2020-03-16 14:59:15 UTC
Created attachment 126831 [details]
New crash information added by DrKonqi

plasmashell (5.18.3) using Qt 5.14.1

What I did/How to reproduce
1. Created a sticky note by middle clicking on mouse.
2. Right clicked on desktop > chose 'customize layout' > then deleted the sticky note
3. Pressed Ctrl+Z several times

Result
Plasma crashed. Sometimes it recovered on its own, sometimes gave black screen with other things running like KRunner

-- Backtrace (Reduced):
#6  0x0000000000000000 in  ()
[...]
#8  0x00007f5bd46dffcd in QQuickShortcutContext::matcher(QObject*, Qt::ShortcutContext) () at /usr/lib/libQt5QuickTemplates2.so.5
#9  0x00007f5bdab6c674 in QShortcutMap::find(QKeyEvent*, int) () at /usr/lib/libQt5Gui.so.5
#10 0x00007f5bdab6d4fd in QShortcutMap::nextState(QKeyEvent*) () at /usr/lib/libQt5Gui.so.5
#11 0x00007f5bdab6d8e7 in QShortcutMap::tryShortcut(QKeyEvent*) () at /usr/lib/libQt5Gui.so.5
Comment 3 David Edmundson 2020-06-19 15:09:11 UTC

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