Summary: | Plasmashell crashes in KKeySequenceRecorder::~KKeySequenceRecorder() when assigning a shortcut (that is already assigned) to sth like a panel | ||
---|---|---|---|
Product: | [Plasma] plasmashell | Reporter: | Mohammad K. <mokazemi> |
Component: | generic-crash | Assignee: | Plasma Bugs List <plasma-bugs> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | jneissl27, kde, kdebugs, nate, nicolas.fella |
Priority: | NOR | Keywords: | drkonqi, qt6 |
Version: | 6.0.1 | ||
Target Milestone: | 1.0 | ||
Platform: | Arch Linux | ||
OS: | Linux | ||
Latest Commit: | https://invent.kde.org/frameworks/kdeclarative/-/commit/028f92fab8cf06611d2fb9b29f5282cc5b91ec03 | Version Fixed In: | Frameworks 6.5 |
Sentry Crash Report: |
Description
Mohammad K.
2024-03-11 06:00:21 UTC
Can reproduce 100% as well.The original backtrace is missing a bunch of symbols, so here's one of mine that has them: (gdb) bt #0 __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44 #1 0x00007f19f1eae8a3 in __pthread_kill_internal (signo=6, threadid=<optimized out>) at pthread_kill.c:78 #2 0x00007f19f1e5c8ee in __GI_raise (sig=6) at ../sysdeps/posix/raise.c:26 #3 0x00007f19f5a858e3 in KCrash::defaultCrashHandler (sig=6) at /home/nate/kde/src/kcrash/src/kcrash.cpp:586 #4 0x00007f19f1e5c9a0 in <signal handler called> () at /lib64/libc.so.6 #5 __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44 #6 0x00007f19f1eae8a3 in __pthread_kill_internal (signo=6, threadid=<optimized out>) at pthread_kill.c:78 #7 0x00007f19f1e5c8ee in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26 #8 0x00007f19f1e448ff in __GI_abort () at abort.c:79 #9 0x00007f19f24e3523 in qAbort () at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/global/qglobal.cpp:161 #10 0x00007f19f2528bf0 in qt_message_fatal<QString&> (message=..., context=<optimized out>) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/global/qlogging.cpp:2003 #11 qt_message(QtMsgType, const QMessageLogContext &, const char *, typedef __va_list_tag __va_list_tag *) (msgType=msgType@entry=QtFatalMsg, context=..., msg=msg@entry=0x7f19f3f34f10 "Object %p destroyed while one of its QML signal handlers is in progress.\nMost likely the object was deleted synchronously (use QObject::deleteLater() instead), or the application is running a nested e"..., ap=ap@entry=0x7ffd259d9590) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/global/qlogging.cpp:378 #12 0x00007f19f24e44b3 in QMessageLogger::fatal (this=this@entry=0x7ffd259d9700, msg=msg@entry=0x7f19f3f34f10 "Object %p destroyed while one of its QML signal handlers is in progress.\nMost likely the object was deleted synchronously (use QObject::deleteLater() instead), or the application is running a nested e"...) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/global/qlogging.cpp:901 #13 0x00007f19f3af9d0f in QQmlData::destroyed (this=<optimized out>, object=0xaa59560) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/qml/qml/qqmlengine.cpp:1472 #14 0x00007f19f25fe3ad in QObject::~QObject (this=this@entry=0xaa59560, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/kernel/qobject.cpp:1065 #15 0x00007f19f4994db2 in KKeySequenceRecorder::~KKeySequenceRecorder (this=this@entry=0xaa59560, __in_chrg=<optimized out>) at /home/nate/kde/src/kguiaddons/src/recorder/kkeysequencerecorder.cpp:477 #16 0x00007f19be38589a in KeySequenceHelper::~KeySequenceHelper (this=this@entry=0xaa59560, __in_chrg=<optimized out>) at /home/nate/kde/src/kdeclarative/src/qmlcontrols/kquickcontrols/private/keysequencehelper.cpp:83 #17 0x00007f19be38871b in QQmlPrivate::QQmlElement<KeySequenceHelper>::~QQmlElement (this=0xaa59560, __in_chrg=<optimized out>) at /usr/include/qt6/QtQml/qqmlprivate.h:99 #18 QQmlPrivate::QQmlElement<KeySequenceHelper>::~QQmlElement (this=0xaa59560, __in_chrg=<optimized out>) at /usr/include/qt6/QtQml/qqmlprivate.h:99 #19 0x00007f19f25fa08d in QObjectPrivate::deleteChildren (this=this@entry=0x3f11650) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/kernel/qobject.cpp:2207 --Type <RET> for more, q to quit, c to continue without paging--c #20 0x00007f19f25fe698 in QObject::~QObject (this=this@entry=0xaa593e0, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/kernel/qobject.cpp:1159 #21 0x00007f19f424204b in QQuickItem::~QQuickItem (this=this@entry=0xaa593e0, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/quick/items/qquickitem.cpp:2364 #22 0x00007f19d593b747 in QQuickLayout::~QQuickLayout (this=this@entry=0xaa593e0, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/quicklayouts/qquicklayout.cpp:780 #23 0x00007f19d593f859 in QQuickGridLayoutBase::~QQuickGridLayoutBase (this=this@entry=0xaa593e0, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/quicklayouts/qquicklinearlayout.cpp:299 #24 0x00007f19d594f81c in QQuickLinearLayout::~QQuickLinearLayout (this=0xaa593e0, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/quicklayouts/qquicklinearlayout_p.h:185 #25 QQuickRowLayout::~QQuickRowLayout (this=0xaa593e0, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/quicklayouts/qquicklinearlayout_p.h:222 #26 QQmlPrivate::QQmlElement<QQuickRowLayout>::~QQmlElement (this=0xaa593e0, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/qml/qml/qqmlprivate.h:99 #27 QQmlPrivate::QQmlElement<QQuickRowLayout>::~QQmlElement (this=0xaa593e0, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/qml/qml/qqmlprivate.h:99 #28 0x00007f19f25fa08d in QObjectPrivate::deleteChildren (this=this@entry=0xce77610) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/kernel/qobject.cpp:2207 #29 0x00007f19f25fe698 in QObject::~QObject (this=this@entry=0xb2144b0, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/kernel/qobject.cpp:1159 #30 0x00007f19f424204b in QQuickItem::~QQuickItem (this=this@entry=0xb2144b0, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/quick/items/qquickitem.cpp:2364 #31 0x00007f19d593b747 in QQuickLayout::~QQuickLayout (this=this@entry=0xb2144b0, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/quicklayouts/qquicklayout.cpp:780 #32 0x00007f19d593f859 in QQuickGridLayoutBase::~QQuickGridLayoutBase (this=this@entry=0xb2144b0, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/quicklayouts/qquicklinearlayout.cpp:299 #33 0x00007f19d594f81c in QQuickLinearLayout::~QQuickLinearLayout (this=0xb2144b0, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/quicklayouts/qquicklinearlayout_p.h:185 #34 QQuickRowLayout::~QQuickRowLayout (this=0xb2144b0, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/quicklayouts/qquicklinearlayout_p.h:222 #35 QQmlPrivate::QQmlElement<QQuickRowLayout>::~QQmlElement (this=0xb2144b0, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/qml/qml/qqmlprivate.h:99 #36 QQmlPrivate::QQmlElement<QQuickRowLayout>::~QQmlElement (this=0xb2144b0, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/qml/qml/qqmlprivate.h:99 #37 0x00007f19f25fa08d in QObjectPrivate::deleteChildren (this=this@entry=0xa62c3a0) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/kernel/qobject.cpp:2207 #38 0x00007f19f25fe698 in QObject::~QObject (this=this@entry=0xc4cf3a0, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/kernel/qobject.cpp:1159 #39 0x00007f19f424204b in QQuickItem::~QQuickItem (this=this@entry=0xc4cf3a0, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/quick/items/qquickitem.cpp:2364 #40 0x00007f19dfb129dc in QQuickControl::~QQuickControl (this=this@entry=0xc4cf3a0, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/quicktemplates/qquickcontrol.cpp:948 #41 0x00007f19dfb4d0f0 in QQuickPane::~QQuickPane (this=this@entry=0xc4cf3a0, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/quicktemplates/qquickpane.cpp:263 #42 0x00007f19dfbbe089 in QQuickToolBar::~QQuickToolBar (this=0xc4cf3a0, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/quicktemplates/qquicktoolbar_p.h:24 #43 QQmlPrivate::QQmlElement<QQuickToolBar>::~QQmlElement (this=0xc4cf3a0, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/qml/qml/qqmlprivate.h:99 #44 QQmlPrivate::QQmlElement<QQuickToolBar>::~QQmlElement (this=0xc4cf3a0, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/qml/qml/qqmlprivate.h:99 #45 0x00007f19f25fa08d in QObjectPrivate::deleteChildren (this=this@entry=0xc3f8130) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/kernel/qobject.cpp:2207 #46 0x00007f19f25fe698 in QObject::~QObject (this=this@entry=0xd2a9d40, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/kernel/qobject.cpp:1159 #47 0x00007f19f424204b in QQuickItem::~QQuickItem (this=this@entry=0xd2a9d40, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/quick/items/qquickitem.cpp:2364 #48 0x00007f19d593b747 in QQuickLayout::~QQuickLayout (this=this@entry=0xd2a9d40, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/quicklayouts/qquicklayout.cpp:780 #49 0x00007f19d593f859 in QQuickGridLayoutBase::~QQuickGridLayoutBase (this=this@entry=0xd2a9d40, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/quicklayouts/qquicklinearlayout.cpp:299 #50 0x00007f19d594f6cc in QQuickLinearLayout::~QQuickLinearLayout (this=0xd2a9d40, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/quicklayouts/qquicklinearlayout_p.h:185 #51 QQuickColumnLayout::~QQuickColumnLayout (this=0xd2a9d40, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/quicklayouts/qquicklinearlayout_p.h:239 #52 QQmlPrivate::QQmlElement<QQuickColumnLayout>::~QQmlElement (this=0xd2a9d40, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/qml/qml/qqmlprivate.h:99 #53 QQmlPrivate::QQmlElement<QQuickColumnLayout>::~QQmlElement (this=0xd2a9d40, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/qml/qml/qqmlprivate.h:99 #54 0x00007f19f5deface in PlasmaQuick::SharedQmlEngine::~SharedQmlEngine (this=0xb403e00, __in_chrg=<optimized out>) at /home/nate/kde/src/libplasma/src/plasmaquick/sharedqmlengine.cpp:153 #55 0x00007f19f5defb39 in PlasmaQuick::SharedQmlEngine::~SharedQmlEngine (this=0xb403e00, __in_chrg=<optimized out>) at /home/nate/kde/src/libplasma/src/plasmaquick/sharedqmlengine.cpp:155 #56 0x000000000044cbea in std::default_delete<PlasmaQuick::SharedQmlEngine>::operator() (__ptr=<optimized out>, this=<optimized out>) at /usr/include/c++/13/bits/unique_ptr.h:93 #57 std::unique_ptr<PlasmaQuick::SharedQmlEngine, std::default_delete<PlasmaQuick::SharedQmlEngine> >::~unique_ptr (this=0x5568928, __in_chrg=<optimized out>) at /usr/include/c++/13/bits/unique_ptr.h:404 #58 PanelConfigView::~PanelConfigView (this=0x5568890, __in_chrg=<optimized out>) at /home/nate/kde/src/plasma-workspace/shell/panelconfigview.cpp:234 #59 0x000000000044ccb9 in PanelConfigView::~PanelConfigView (this=0x5568890, __in_chrg=<optimized out>) at /home/nate/kde/src/plasma-workspace/shell/panelconfigview.cpp:234 #60 0x00007f19f25f2d89 in QObject::event (this=0x5568890, e=0x3c865b0) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/kernel/qobject.cpp:1424 #61 0x00007f19f4dc3228 in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x5568890, e=0x3c865b0) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/widgets/kernel/qapplication.cpp:3296 #62 0x00007f19f25a0948 in QCoreApplication::notifyInternal2 (receiver=0x5568890, event=0x3c865b0) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/kernel/qcoreapplication.cpp:1121 #63 0x00007f19f25a0b4d in QCoreApplication::sendEvent (receiver=<optimized out>, event=<optimized out>) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/kernel/qcoreapplication.cpp:1539 #64 0x00007f19f25a4845 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x13f6230) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/kernel/qcoreapplication.cpp:1901 #65 0x00007f19f25a4bbd in QCoreApplication::sendPostedEvents (receiver=<optimized out>, event_type=<optimized out>) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/kernel/qcoreapplication.cpp:1760 #66 0x00007f19f286c86f in postEventSourceDispatch (s=0x14e4020) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/kernel/qeventdispatcher_glib.cpp:243 #67 0x00007f19f1311e5c in g_main_dispatch (context=0x7f19d8000ef0) at ../glib/gmain.c:3476 #68 g_main_context_dispatch_unlocked (context=0x7f19d8000ef0) at ../glib/gmain.c:4284 #69 0x00007f19f136cf18 in g_main_context_iterate_unlocked.isra.0 (context=context@entry=0x7f19d8000ef0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4349 #70 0x00007f19f130fad3 in g_main_context_iteration (context=0x7f19d8000ef0, may_block=1) at ../glib/gmain.c:4414 #71 0x00007f19f286c11f in QEventDispatcherGlib::processEvents (this=0x1424b00, flags=...) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/kernel/qeventdispatcher_glib.cpp:393 #72 0x00007f19f25ad70b in QEventLoop::exec (this=this@entry=0x7ffd259da150, flags=..., flags@entry=...) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/global/qflags.h:34 #73 0x00007f19f503bacb in QDialog::exec (this=0xcce78c0) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/global/qflags.h:74 #74 0x00007f19f56f41e9 in KMessageBox::createKMessageBox (dialog=dialog@entry=0xcce78c0, buttons=buttons@entry=0x7f19d83b7d90, icon=..., text=..., strlist=..., ask=..., checkboxReturn=0x0, options=..., details=..., notifyType=QMessageBox::Critical) at /home/nate/kde/src/kwidgetsaddons/src/kmessagebox.cpp:375 #75 0x00007f19f56f4a07 in KMessageBox::createKMessageBox (dialog=dialog@entry=0xcce78c0, buttons=buttons@entry=0x7f19d83b7d90, icon=icon@entry=QMessageBox::Critical, text=..., strlist=..., ask=..., checkboxReturn=0x0, options=..., details=...) at /home/nate/kde/src/kwidgetsaddons/src/kmessagebox.cpp:153 #76 0x00007f19f56f668f in KMessageBox::errorInternal (dialog=dialog@entry=0xcce78c0, text=..., title=..., buttonOk=..., options=...) at /home/nate/kde/src/kwidgetsaddons/src/kmessagebox.cpp:804 #77 0x00007f19f56f6815 in KMessageBox::error (parent=parent@entry=0x0, text=..., title=..., options=options@entry=...) at /home/nate/kde/src/kwidgetsaddons/src/kmessagebox.cpp:809 #78 0x00007f19be386502 in KeySequenceHelperPrivate::conflictWithGlobalShortcuts (keySequence=..., this=0xa409920) at /usr/include/qt6/QtCore/qflags.h:74 #79 0x00007f19be386e20 in KeySequenceHelperPrivate::conflictWithGlobalShortcuts (keySequence=..., this=0xa409920) at /usr/include/qt6/QtCore/qflags.h:34 #80 KeySequenceHelper::isKeySequenceAvailable (keySequence=..., this=0xaa59560) at /home/nate/kde/src/kdeclarative/src/qmlcontrols/kquickcontrols/private/keysequencehelper.cpp:92 #81 KeySequenceHelper::isKeySequenceAvailable (this=0xaa59560, keySequence=...) at /home/nate/kde/src/kdeclarative/src/qmlcontrols/kquickcontrols/private/keysequencehelper.cpp:85 #82 0x00007f19be386ff1 in KeySequenceHelper::qt_static_metacall (_o=_o@entry=0xaa59560, _c=_c@entry=QMetaObject::InvokeMetaMethod, _id=_id@entry=1, _a=_a@entry=0x7ffd259daae8) at /home/nate/kde/build/kdeclarative/src/qmlcontrols/kquickcontrols/private/kquickcontrolsprivateplugin_autogen/include/moc_keysequencehelper.cpp:228 #83 0x00007f19be387190 in KeySequenceHelper::qt_metacall (this=0xaa59560, _c=QMetaObject::InvokeMetaMethod, _id=1, _a=0x7ffd259daae8) at /home/nate/kde/build/kdeclarative/src/qmlcontrols/kquickcontrols/private/kquickcontrolsprivateplugin_autogen/include/moc_keysequencehelper.cpp:292 #84 0x00007f19f3dd81da in QQmlObjectOrGadget::metacall (this=this@entry=0x7ffd259dadb0, type=type@entry=QMetaObject::InvokeMetaMethod, index=<optimized out>, index@entry=15, argv=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/qml/qml/qqmlobjectorgadget.cpp:14 #85 0x00007f19f3c662da in QV4::CallMethod (callType=<optimized out>, callArgs=<optimized out>, engine=<optimized out>, argTypes=<optimized out>, argCount=<optimized out>, returnType=..., index=<optimized out>, object=...) at /usr/include/qt6/QtCore/qvarlengtharray.h:84 #86 QV4::CallPrecise (object=..., data=<optimized out>, engine=<optimized out>, engine@entry=0x1e0dc40, callArgs=<optimized out>, callArgs@entry=0x7f19dc1bf590, callType=callType@entry=QMetaObject::InvokeMetaMethod) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/qml/jsruntime/qv4qobjectwrapper.cpp:1850 #87 0x00007f19f3c67ea5 in operator() (__closure=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/qml/jsruntime/qv4qobjectwrapper.cpp:2753 #88 operator()<QV4::QObjectMethod::callInternal(const QV4::Value*, const QV4::Value*, int) const::<lambda()> > (call=<optimized out>, __closure=<synthetic pointer>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/qml/jsruntime/qv4qobjectwrapper.cpp:2730 #89 QV4::QObjectMethod::callInternal (this=<optimized out>, thisObject=<optimized out>, argv=0x7f19dc1bf530, argc=1) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/qml/jsruntime/qv4qobjectwrapper.cpp:2753 #90 0x00007f19f3c83ef4 in QV4::FunctionObject::call (argc=1, argv=0x7f19dc1bf530, thisObject=0x7f19dc1bf588, this=0x7ffd259dae98) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/qml/jsruntime/qv4functionobject_p.h:171 #91 QV4::Runtime::CallQmlContextPropertyLookup::call (engine=0x1e0dc40, index=<optimized out>, argv=0x7f19dc1bf530, argc=1) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/qml/jsruntime/qv4runtime.cpp:1418 #92 0x00007f19f3cbf90f in QV4::Moth::VME::interpret (frame=0x4ae6, frame@entry=0x7ffd259db140, engine=0x1e0dc40, code=0x7f19dee83498 "P\v.\003\030\b\026\006B\004\bL\v.\005\030\b.\006<\aB\b\b.\t\030\b\nB\n\b.\v\030\b\254\f\b") at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/qml/jsruntime/qv4vme_moth.cpp:926 #93 0x00007f19f3cc5287 in QV4::Moth::VME::exec (frame=frame@entry=0x7ffd259db140, engine=engine@entry=0x1e0dc40) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/qml/jsruntime/qv4vme_moth.cpp:584 #94 0x00007f19f3c102b6 in QV4::doCall (self=self@entry=0xc1e34a0, thisObject=<optimized out>, argv=argv@entry=0x7f19dc1bf4f0, argc=argc@entry=1, context=context@entry=0x7f19a72e7188) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/qml/jsruntime/qv4function.cpp:54 #95 0x00007f19f3c106aa in QV4::Function::call (this=this@entry=0xc1e34a0, thisObject=<optimized out>, argv=argv@entry=0x7f19dc1bf4f0, argc=argc@entry=1, context=context@entry=0x7f19a72e7188) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/qml/jsruntime/qv4function.cpp:79 #96 0x00007f19f3c108bb in operator() (argc=1, argv=0x7f19dc1bf4f0, thisObject=<optimized out>, __closure=<synthetic pointer>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/qml/jsruntime/qv4function.cpp:30 #97 QV4::convertAndCall<QV4::Function::call(QObject*, void**, const QMetaType*, int, QV4::ExecutionContext*)::<lambda(const QV4::Value*, const QV4::Value*, int)> > (call=..., argc=1, types=0x7ffd259db3e8, a=0x7ffd259dce70, thisObject=0xaa59560, engine=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/qml/jsruntime/qv4jscall_p.h:173 #98 QV4::Function::call (this=0xc1e34a0, thisObject=0xaa59560, a=a@entry=0x7ffd259dce70, types=0x7ffd259db3e8, argc=1, context=0x7f19a72e7188) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/qml/jsruntime/qv4function.cpp:27 #99 0x00007f19f3d99967 in QQmlJavaScriptExpression::evaluate (this=this@entry=0xccfbd90, a=a@entry=0x7ffd259dce70, types=<optimized out>, argc=argc@entry=1) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/qml/qml/qqmljavascriptexpression_p.h:248 #100 0x00007f19f3d1829d in QQmlBoundSignalExpression::evaluate (this=0xccfbd90, a=a@entry=0x7ffd259dce70) at /usr/include/qt6/QtCore/qvarlengtharray.h:85 #101 0x00007f19f3d18de0 in QQmlBoundSignal_callback (e=0xc219440, a=0x7ffd259dce70) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/qml/qml/ftw/qqmlrefcount_p.h:72 #102 0x00007f19f3dc623c in QQmlNotifier::emitNotify (endpoint=<optimized out>, a=0x7ffd259dce70) at /usr/src/debug/qt6-qtdeclarative-6.6.2-1.fc39.x86_64/src/qml/qml/qqmlnotifier.cpp:70 #103 0x00007f19f26015c0 in doActivate<false> (sender=0xaa59560, signal_index=3, argv=0x7ffd259dce70) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/kernel/qobject.cpp:3931 #104 0x00007f19f25f7f67 in QMetaObject::activate (sender=<optimized out>, m=m@entry=0x7f19f49bf5c0 <KKeySequenceRecorder::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffd259dce70) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/kernel/qobject.cpp:4099 #105 0x00007f19f4994e72 in KKeySequenceRecorder::gotKeySequence (this=<optimized out>, _t1=<optimized out>) at /home/nate/kde/build/kguiaddons/src/KF6GuiAddons_autogen/include/moc_kkeysequencerecorder.cpp:377 #106 0x00007f19f2601951 in QtPrivate::QSlotObjectBase::call (a=0x7ffd259dcf80, r=0xb1c8e80, this=0xc2194b0) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/kernel/qobjectdefs_impl.h:433 #107 doActivate<false> (sender=0xb1c8ec0, signal_index=3, argv=0x7ffd259dcf80) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/kernel/qobject.cpp:4039 #108 0x00007f19f25f7f67 in QMetaObject::activate (sender=<optimized out>, m=m@entry=0x7f19f2a6cee0, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffd259dcf80) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/kernel/qobject.cpp:4099 #109 0x00007f19f2610b0d in QTimer::timeout (this=<optimized out>, _t1=...) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/redhat-linux-build/src/corelib/Core_autogen/include/moc_qtimer.cpp:272 #110 0x00007f19f25f2eff in QObject::event (this=0xb1c8ec0, e=0x7ffd259dd110) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/kernel/qobject.cpp:1459 #111 0x00007f19f4dc3228 in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0xb1c8ec0, e=0x7ffd259dd110) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/widgets/kernel/qapplication.cpp:3296 #112 0x00007f19f25a0948 in QCoreApplication::notifyInternal2 (receiver=0xb1c8ec0, event=0x7ffd259dd110) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/kernel/qcoreapplication.cpp:1121 #113 0x00007f19f25a0b4d in QCoreApplication::sendEvent (receiver=<optimized out>, event=<optimized out>) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/kernel/qcoreapplication.cpp:1539 #114 0x00007f19f274e61b in QTimerInfoList::activateTimers (this=0x1495c60) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/kernel/qtimerinfo_unix.cpp:507 #115 0x00007f19f286be19 in timerSourceDispatch (source=<optimized out>) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/kernel/qeventdispatcher_glib.cpp:149 #116 0x00007f19f1311e5c in g_main_dispatch (context=0x7f19d8000ef0) at ../glib/gmain.c:3476 #117 g_main_context_dispatch_unlocked (context=0x7f19d8000ef0) at ../glib/gmain.c:4284 #118 0x00007f19f136cf18 in g_main_context_iterate_unlocked.isra.0 (context=context@entry=0x7f19d8000ef0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4349 #119 0x00007f19f130fad3 in g_main_context_iteration (context=0x7f19d8000ef0, may_block=1) at ../glib/gmain.c:4414 #120 0x00007f19f286c11f in QEventDispatcherGlib::processEvents (this=0x1424b00, flags=...) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/kernel/qeventdispatcher_glib.cpp:393 #121 0x00007f19f25ad70b in QEventLoop::exec (this=this@entry=0x7ffd259dd3e0, flags=..., flags@entry=...) at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/global/qflags.h:34 #122 0x00007f19f25a950d in QCoreApplication::exec () at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/corelib/global/qflags.h:74 #123 0x00007f19f2dfafbd in QGuiApplication::exec () at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/gui/kernel/qguiapplication.cpp:1925 #124 0x00007f19f4dc3199 in QApplication::exec () at /usr/src/debug/qt6-qtbase-6.6.2-1.fc39.x86_64/src/widgets/kernel/qapplication.cpp:2574 #125 0x000000000042600f in main (argc=<optimized out>, argv=<optimized out>) at /home/nate/kde/src/plasma-workspace/shell/main.cpp:211 It looks like pop ups a messagebox, spawning a nested event loop (urgh). opening that window closes the configView which is destroyed resulting in boom A possibly relevant merge request was started @ https://invent.kde.org/frameworks/kdeclarative/-/merge_requests/236 A possibly relevant merge request was started @ https://invent.kde.org/frameworks/kdeclarative/-/merge_requests/236 *** Bug 488557 has been marked as a duplicate of this bug. *** Git commit f05d0f22d46d33880ee72dc01de58b1129e968b6 by Arjen Hiemstra. Committed on 10/07/2024 at 08:27. Pushed by ahiemstra into branch 'master'. kquickcontrols: Introduce private KeySequenceValidator type This extracts the validation logic out of KeySequenceHelper and allows us more control over the exact execution order of things. Most importantly, this does not rely on internal message boxes and the nasty nested event loops that come with them. Instead, KeySequenceValidator is a little more stateful but allows the using code to indicate what should happen if something needs handling by the user. M +2 -1 src/qmlcontrols/kquickcontrols/private/CMakeLists.txt A +206 -0 src/qmlcontrols/kquickcontrols/private/keysequencevalidator.cpp [License: LGPL(v2.1+)] A +62 -0 src/qmlcontrols/kquickcontrols/private/keysequencevalidator.h [License: LGPL(v2.1+)] M +2 -0 src/qmlcontrols/kquickcontrols/private/kquickcontrolsprivateplugin.cpp https://invent.kde.org/frameworks/kdeclarative/-/commit/f05d0f22d46d33880ee72dc01de58b1129e968b6 Git commit 028f92fab8cf06611d2fb9b29f5282cc5b91ec03 by Arjen Hiemstra. Committed on 10/07/2024 at 08:27. Pushed by ahiemstra into branch 'master'. kquickcontrols: Use KeySequenceValidator in KeySequenceItem Replace the internal logic of KeySequenceHelper with KeySequenceValidator. This gives us control of what should happen when a conflict has been detected, in this case we add some QtQuick dialogs to ask those questions in a way that is compatible with QtQuick rather than using nested event loops that cause crashes. M +62 -9 src/qmlcontrols/kquickcontrols/KeySequenceItem.qml M +11 -0 src/qmlcontrols/kquickcontrols/private/keysequencehelper.cpp M +1 -0 src/qmlcontrols/kquickcontrols/private/keysequencehelper.h https://invent.kde.org/frameworks/kdeclarative/-/commit/028f92fab8cf06611d2fb9b29f5282cc5b91ec03 |