https://bugs.kde.org/show_bug.cgi?id=474905
Bug ID: 474905 Summary: Interacting with a popup crashes Kate on wayland Classification: Applications Product: kate Version: 23.08.1 Platform: Other OS: Linux Status: REPORTED Severity: normal Priority: NOR Component: general Assignee: kwrite-bugs-n...@kde.org Reporter: knd...@outlook.com Target Milestone: --- When I hover over a symbol in Kate, the tooltip is provided by the LSP. When I use the mouse button to double click the text and select it, Kate crashes. This is not exactly consistently reproducible but the common theme is to create a popup and then click on the popup or outside rapidly. This has been reported to Qt as well https://bugreports.qt.io/browse/QTBUG-117015 where you can find the backtrace from all threads and a screenshot. --- #0 operator<<(QDebug, QObject const*) (dbg=..., o=0x18) at ../../include/QtCore/../../src/corelib/io/qdebug.h:128 #1 0x00007fffc012588f in QtWaylandClient::QWaylandXdgSurface::setGrabPopup(QtWaylandClient::QWaylandWindow*, QtWaylandClient::QWaylandInputDevice*, int) (this=this@entry=0x5555568cecd0, parent=parent@entry=0x555556987b10, device=0x555555598a60, serial=13260) at /usr/include/qt/QtCore/qdebug.h:117 #2 0x00007fffc0125d17 in QtWaylandClient::QWaylandXdgSurface::QWaylandXdgSurface(QtWaylandClient::QWaylandXdgShell*, xdg_surface*, QtWaylandClient::QWaylandWindow*) (this=0x5555568cecd0, shell=<optimized out>, surface=<optimized out>, window=<optimized out>, this=<optimized out>, shell=<optimized out>, surface=<optimized out>, window=<optimized out>) at ../../../../include/QtWaylandClient/5.15.10/QtWaylandClient/private/../../../../../../qtwayland/src/client/qwaylanddisplay_p.h:204 #3 0x00007fffc0126460 in QtWaylandClient::QWaylandXdgShell::getXdgSurface(QtWaylandClient::QWaylandWindow*) (this=0x555556a1c790, window=0x555556a0e510) at /usr/src/debug/qt5-wayland/build/src/plugins/shellintegration/xdg-shell/wayland-xdg-shell-client-protocol.h:521 #4 0x00007ffff152bf16 in QtWaylandClient::QWaylandWindow::initWindow() (this=this@entry=0x555556a0e510) at /usr/src/debug/qt5-wayland/qtwayland/src/client/qwaylandwindow.cpp:141 #5 0x00007ffff152c276 in QtWaylandClient::QWaylandWindow::setVisible(bool) (visible=<optimized out>, this=0x555556a0e510) at /usr/src/debug/qt5-wayland/qtwayland/src/client/qwaylandwindow.cpp:429 #6 QtWaylandClient::QWaylandWindow::setVisible(bool) (this=0x555556a0e510, visible=<optimized out>) at /usr/src/debug/qt5-wayland/qtwayland/src/client/qwaylandwindow.cpp:421 #7 0x00007ffff75ab74f in QWidgetWindow::setNativeWindowVisibility(bool) (visible=true, this=0x5555569a5b40) at kernel/qwidgetwindow.cpp:215 #8 QWidgetPrivate::show_sys() (this=this@entry=0x555555f7ac00) at kernel/qwidget.cpp:7918 #9 0x00007ffff75addf9 in QWidgetPrivate::show_helper() (this=this@entry=0x555555f7ac00) at kernel/qwidget.cpp:7841 #10 0x00007ffff75ae40d in QWidgetPrivate::setVisible(bool) (this=0x555555f7ac00, visible=<optimized out>) at kernel/qwidget.cpp:8137 #11 0x00007ffff76f9e7c in QMenuPrivate::popup(QPoint const&, QAction*, std::function<QPoint (QSize const&)>) (this=0x555555f7ac00, p=<optimized out>, atAction=<optimized out>, positionFunction=...) at widgets/qmenu.cpp:2617 #12 0x00007ffff76fa4b2 in QMenu::popup(QPoint const&, QAction*) (this=<optimized out>, p=<optimized out>, atAction=<optimized out>) at widgets/qmenu.cpp:2354 #13 0x00007ffff77637f9 in QWidgetTextControl::processEvent(QEvent*, QTransform const&, QWidget*) (this=<optimized out>, e=0x7fffffffd4c0, transform=..., contextWidget=0x555556a18d00) at ../../include/QtGui/../../src/gui/kernel/qevent.h:565 #14 0x00007ffff775d2a0 in QWidgetTextControl::processEvent(QEvent*, QPointF const&, QWidget*) (this=0x5555569a6350, e=0x7fffffffd4c0, coordinateOffset=..., contextWidget=0x555556a18d00) at widgets/qwidgettextcontrol.cpp:1012 #15 0x00007ffff77374d4 in QTextEditPrivate::sendControlEvent(QEvent*) (e=0x7fffffffd4c0, this=<optimized out>) at widgets/qtextedit_p.h:103 #16 QTextEdit::contextMenuEvent(QContextMenuEvent*) (this=<optimized out>, e=0x7fffffffd4c0) at widgets/qtextedit.cpp:1745 #17 0x00007ffff75af789 in QWidget::event(QEvent*) (this=0x5555568d4620, event=0x7fffffffd4c0) at kernel/qwidget.cpp:8849 #18 0x00007ffff765d703 in QFrame::event(QEvent*) (this=0x5555568d4620, e=0x7fffffffd4c0) at widgets/qframe.cpp:550 #19 0x00007ffff6899702 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) (receiver=receiver@entry=0x555556a18d00, event=event@entry=0x7fffffffd4c0) at kernel/qcoreapplication.cpp:1190 #20 0x00007ffff757892f in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x555555593d90, receiver=receiver@entry=0x555556a18d00, e=e@entry=0x7fffffffd4c0) at kernel/qapplication.cpp:3634 #21 0x00007ffff757e2c4 in QApplication::notify(QObject*, QEvent*) (this=<optimized out>, receiver=0x555556a18d00, e=0x7fffffffd4c0) at kernel/qapplication.cpp:3246 #22 0x00007ffff689c6f8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x555556a18d00, event=0x7fffffffd4c0) at kernel/qcoreapplication.cpp:1064 #23 0x00007ffff689c747 in QCoreApplication::forwardEvent(QObject*, QEvent*, QEvent*) (receiver=<optimized out>, event=<optimized out>, originatingEvent=<optimized out>) at kernel/qcoreapplication.cpp:1079 #24 0x00007ffff75cd664 in QWidgetWindow::handleMouseEvent(QMouseEvent*) (this=this@entry=0x5555568c4e00, event=event@entry=0x7fffffffd860) at kernel/qwidgetwindow.cpp:692 #25 0x00007ffff75cec27 in QWidgetWindow::event(QEvent*) (this=0x5555568c4e00, event=0x7fffffffd860) at kernel/qwidgetwindow.cpp:300 #26 0x00007ffff757893f in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x5555568c4e00, e=0x7fffffffd860) at kernel/qapplication.cpp:3640 #27 0x00007ffff689c6f8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x5555568c4e00, event=0x7fffffffd860) at kernel/qcoreapplication.cpp:1064 #28 0x00007ffff689c783 in QCoreApplication::sendSpontaneousEvent(QObject*, QEvent*) (receiver=<optimized out>, event=<optimized out>) at kernel/qcoreapplication.cpp:1474 #29 0x00007ffff6d4193c in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) (e=0x7fffe0002220) at kernel/qguiapplication.cpp:2285 #30 0x00007ffff6d2a6c5 in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) (flags=...) at kernel/qwindowsysteminterface.cpp:1169 #31 0x00007ffff155ec25 in userEventSourceDispatch(_GSource*, int (*)(void*), void*) () at /usr/lib/libQt5WaylandClient.so.5 #32 0x00007ffff4510aa1 in g_main_context_dispatch () at /usr/lib/libglib-2.0.so.0 #33 0x00007ffff456dc69 in () at /usr/lib/libglib-2.0.so.0 #34 0x00007ffff450e152 in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0 #35 0x00007ffff68eb51c in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x5555555ba680, flags=...) at kernel/qeventdispatcher_glib.cpp:423 #36 0x00007ffff689b404 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fffffffdc00, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69 #37 0x00007ffff689c8a3 in QCoreApplication::exec() () at ../../include/QtCore/../../src/corelib/global/qflags.h:121 #38 0x00007ffff6d3bef2 in QGuiApplication::exec() () at kernel/qguiapplication.cpp:1870 #39 0x00007ffff7576cda in QApplication::exec() () at kernel/qapplication.cpp:2832 #40 0x000055555555c60e in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/kate/kate-23.08.0/apps/kate/main.cpp:609 -- You are receiving this mail because: You are watching all bug changes.