STEPS TO REPRODUCE 1. invoke quick open via Ctrl+Alt+O shortcut OBSERVED RESULT Sometimes Kate crashes SOFTWARE/OS VERSIONS KDE Plasma Version: master KDE Frameworks Version: master Qt Version: 6.5.1 ADDITIONAL INFORMATION #5 0x00007f5ed456e887 in QtWaylandClient::QWaylandXdgSurface::setGrabPopup(QtWaylandClient::QWaylandWindow*, QtWaylandClient::QWaylandInputDevice*, int) (this=this@entry=0xc0a24e0, parent=parent@entry=0x2845900, device=0x10de690, serial=174286) at /usr/src/debug/qt6-qtwayland-6.5.1-1.fc38.x86_64/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp:509 #6 0x00007f5ed456eaa9 in QtWaylandClient::QWaylandXdgSurface::QWaylandXdgSurface(QtWaylandClient::QWaylandXdgShell*, xdg_surface*, QtWaylandClient::QWaylandWindow*) (this=0xc0a24e0, shell=<optimized out>, surface=<optimized out>, window=<optimized out>, this=<optimized out>, shell=<optimized out>, surface=<optimized out>, window=<optimized out>) at /usr/src/debug/qt6-qtwayland-6.5.1-1.fc38.x86_64/redhat-linux-build/include/QtWaylandClient/6.5.1/QtWaylandClient/private/../../../../../../src/client/qwaylanddisplay_p.h:181 #7 0x00007f5ed456eff5 in QtWaylandClient::QWaylandXdgShell::getXdgSurface(QtWaylandClient::QWaylandWindow*) (this=0x10e2f30, window=0xcf90130) at /usr/src/debug/qt6-qtwayland-6.5.1-1.fc38.x86_64/redhat-linux-build/src/plugins/shellintegration/xdg-shell/wayland-xdg-shell-client-protocol.h:531 #8 0x00007f5ed67ae1e5 in QtWaylandClient::QWaylandWindow::initWindow() (this=0xcf90130) at /usr/src/debug/qt6-qtwayland-6.5.1-1.fc38.x86_64/src/client/qwaylandwindow.cpp:138 #9 0x00007f5ed67b3b45 in QtWaylandClient::QWaylandWindow::setVisible(bool) (visible=<optimized out>, this=0xcf90130) at /usr/src/debug/qt6-qtwayland-6.5.1-1.fc38.x86_64/src/client/qwaylandwindow.cpp:504 #10 QtWaylandClient::QWaylandWindow::setVisible(bool) (this=0xcf90130, visible=<optimized out>) at /usr/src/debug/qt6-qtwayland-6.5.1-1.fc38.x86_64/src/client/qwaylandwindow.cpp:496 #11 0x00007f5ed9e10ee7 in QWidgetPrivate::show_sys() () at /lib64/libQt6Widgets.so.6 #12 0x00007f5ed9e1a1e5 in QWidgetPrivate::show_helper() () at /lib64/libQt6Widgets.so.6 #13 0x00007f5ed9e1d355 in QWidgetPrivate::setVisible(bool) () at /lib64/libQt6Widgets.so.6 #14 0x00007f5edb8759b3 in KateQuickOpen::updateState() (this=0x7fff243e8e20) at /home/nico/kde6/src/kate/apps/lib/quickopen/katequickopen.cpp:383 #15 KateQuickOpen::KateQuickOpen(KateMainWindow*) (this=0x7fff243e8e20, mainWindow=<optimized out>) at /home/nico/kde6/src/kate/apps/lib/quickopen/katequickopen.cpp:336 #16 0x00007f5edb899007 in KateMainWindow::slotQuickOpen() (this=0x1a33eb0) at /home/nico/kde6/src/kate/apps/lib/katemainwindow.cpp:1483 #17 0x00007f5ed89ddcd4 in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7fff243e8f90, r=0x1a33eb0, this=0x1c34470) at /usr/src/debug/qt6-qtbase-6.5.1-1.fc38.x86_64/src/corelib/kernel/qobjectdefs_impl.h:363 #18 doActivate<false>(QObject*, int, void**) (sender=0x1bdd590, signal_index=7, argv=0x7fff243e8f90) at /usr/src/debug/qt6-qtbase-6.5.1-1.fc38.x86_64/src/corelib/kernel/qobject.cpp:3992 #19 0x00007f5ed96195a4 in QAction::triggered(bool) () at /lib64/libQt6Gui.so.6 #20 0x00007f5ed961c6eb in QAction::activate(QAction::ActionEvent) () at /lib64/libQt6Gui.so.6 #21 0x00007f5ed961d762 in QAction::event(QEvent*) () at /lib64/libQt6Gui.so.6 #22 0x00007f5ed9dc0b08 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib64/libQt6Widgets.so.6 #23 0x00007f5ed897c308 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x1bdd590, event=0x7fff243e91f0) at /usr/src/debug/qt6-qtbase-6.5.1-1.fc38.x86_64/src/corelib/kernel/qcoreapplication.cpp:1115 #24 0x00007f5ed962f43e in QShortcutMap::dispatchEvent(QKeyEvent*) () at /lib64/libQt6Gui.so.6 #25 0x00007f5ed962ff0f in QShortcutMap::tryShortcut(QKeyEvent*) () at /lib64/libQt6Gui.so.6 #26 0x00007f5ed92677c2 in QWindowSystemInterface::handleShortcutEvent(QWindow*, unsigned long, int, QFlags<Qt::KeyboardModifier>, unsigned int, unsigned int, unsigned int, QString const&, bool, unsigned short) () at /lib64/libQt6Gui.so.6 #27 0x00007f5ed920508a in QGuiApplicationPrivate::processKeyEvent(QWindowSystemInterfacePrivate::KeyEvent*) () at /lib64/libQt6Gui.so.6 #28 0x00007f5ed926339c in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt6Gui.so.6 #29 0x00007f5ed9743964 in userEventSourceDispatch(_GSource*, int (*)(void*), void*) () at /lib64/libQt6Gui.so.6 #30 0x00007f5ed77b039c in g_main_context_dispatch () at /lib64/libglib-2.0.so.0 #31 0x00007f5ed780e438 in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0 #32 0x00007f5ed77ada23 in g_main_context_iteration () at /lib64/libglib-2.0.so.0 #33 0x00007f5ed8c1ff7f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x10c76d0, flags=...) at /usr/src/debug/qt6-qtbase-6.5.1-1.fc38.x86_64/src/corelib/kernel/qeventdispatcher_glib.cpp:393 #34 0x00007f5ed8988e93 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fff243e96e0, flags=..., flags@entry=...) at /usr/src/debug/qt6-qtbase-6.5.1-1.fc38.x86_64/src/corelib/global/qflags.h:34 #35 0x00007f5ed8984b3d in QCoreApplication::exec() () at /usr/src/debug/qt6-qtbase-6.5.1-1.fc38.x86_64/src/corelib/global/qflags.h:74 #36 0x0000000000409929 in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /home/nico/kde6/src/kate/apps/kate/main.cpp:609
Hmmm, not nice, but so far can't reproduce myself.
Can you reproduce it? Does it help if one would e.g. trigger updateState with some single shot?
Not reliably. Something like this happens regularly (like 1 in 50 times) opening the quick open thing. Most of the time Kate closes without creating a coredump, I think because it's terminated because of a Wayland protocol error
For me it so far happens never. If you can at least get it sometimes to crash, could you try if a singleShot might remove that for you?
Upstream link: https://bugreports.qt.io/browse/QTBUG-117015
Thanks for creating a Qt bug for this!
Should be fixed after https://invent.kde.org/utilities/kate/-/merge_requests/1355