Bug 397298

Summary: Kate crashes with segmentation fault when hovering over folded code segment
Product: [Applications] kate Reporter: A. Wilcox (awilfox) <awilfox>
Component: partAssignee: KWrite Developers <kwrite-bugs-null>
Status: RESOLVED UPSTREAM    
Severity: crash CC: christoph
Priority: NOR    
Version: 18.04.3   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description A. Wilcox (awilfox) 2018-08-09 06:50:17 UTC
Steps to reproduce:

1. Create a reStructuredText document with some headings.
2. Collapse the headings.
3. Continue to move mouse over the > in the left side bar where the line numbers are, showing the folded content in a tooltip.


Environment:

Crashes every time on my POWER9 workstation.  Does not seem to crash on x86_64.  Stack trace seems to pin the issue to Qt, but I'm not sure how to submit this bug upstream.  I'm terribly unfamiliar with the way this all fits together.

Linux gwyn 4.14.56-mc9-easy-p8 #1 SMP Tue Aug 7 04:13:37 CDT 2018 ppc64 GNU/Linux

musl libc (powerpc64) Version 1.1.19

Kate 18.04.3 under Qt 5.9.6 LTS with Frameworks 5.48.0


Backtrace:


Thread 1 "kate" received signal SIGSEGV, Segmentation fault.
QGraphicsItem::scene (this=0x28) at graphicsview/qgraphicsitem.cpp:1585
1585    graphicsview/qgraphicsitem.cpp: No such file or directory.
(gdb) bt
#0  QGraphicsItem::scene (this=0x28) at graphicsview/qgraphicsitem.cpp:1585
#1  0x00003ffff6902520 in mapToGlobalTransform (w=0x100cde180) at kernel/qwidget.cpp:12532
#2  0x00003ffff690275c in QWidget::mapFromGlobal (this=<optimized out>, pos=...) at kernel/qwidget.cpp:12582
#3  0x00003ffff68bac8c in QApplicationPrivate::dispatchEnterLeave (enter=0x100cde180, leave=<optimized out>, globalPosF=...) at kernel/qapplication.cpp:2351
#4  0x00003ffff68bb880 in QApplicationPrivate::sendMouseEvent (receiver=0x100cde180, event=0x3fffffffe200, alienWidget=0x0, nativeWidget=0x100cde180, buttonDown=0x3ffff6f0c460 <qt_button_down>, lastMouseReceiver=..., spontaneous=<optimized out>)
    at kernel/qapplication.cpp:2684
#5  0x00003ffff6943cb8 in QWidgetWindow::handleMouseEvent (this=0x100d036a0, event=0x3fffffffe738) at kernel/qwidgetwindow.cpp:629
#6  0x00003ffff6946f68 in QWidgetWindow::event (this=0x100d036a0, event=0x3fffffffe738) at kernel/qwidgetwindow.cpp:250
#7  0x00003ffff68b12f4 in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x100d036a0, e=0x3fffffffe738) at kernel/qapplication.cpp:3722
#8  0x00003ffff68bcba0 in QApplication::notify (this=0x3fffffffef20, receiver=0x100d036a0, e=0x3fffffffe738) at kernel/qapplication.cpp:3094
#9  0x00003ffff5c07010 in QCoreApplication::notifyInternal2 (receiver=0x100d036a0, event=0x3fffffffe738) at kernel/qcoreapplication.cpp:1024
#10 0x00003ffff6233b58 in QCoreApplication::sendSpontaneousEvent (event=0x3fffffffe728, receiver=0x100d036a0) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:236
#11 QGuiApplicationPrivate::processMouseEvent (e=0x100abcc80) at kernel/qguiapplication.cpp:1952
#12 0x00003ffff6235f60 in QGuiApplicationPrivate::processWindowSystemEvent (e=<optimized out>) at kernel/qguiapplication.cpp:1733
#13 0x00003ffff61f6d64 in QWindowSystemInterface::sendWindowSystemEvents (flags=...) at kernel/qwindowsysteminterface.cpp:946
#14 0x00003ffff1924314 in userEventSourceDispatch (source=<optimized out>) at qeventdispatcher_glib.cpp:77
#15 0x00003ffff3c5c2a0 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#16 0x00003ffff3c5c5e8 in ?? () from /usr/lib/libglib-2.0.so.0
#17 0x00003ffff3c5c71c in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#18 0x00003ffff5c8a5b4 in QEventDispatcherGlib::processEvents (this=0x3ffff3c72260 <g_poll>, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#19 0x00003ffff19245f0 in QPAEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at qeventdispatcher_glib.cpp:122
#20 0x00003ffff5c03a14 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:134
#21 0x00003ffff5c041f0 in QEventLoop::exec (this=0x3fffffffeca8, flags=...) at kernel/qeventloop.cpp:212
#22 0x00003ffff5c11fa8 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1297
#23 0x00003ffff6228118 in QGuiApplication::exec () at kernel/qguiapplication.cpp:1679
#24 0x00003ffff68b1100 in QApplication::exec () at kernel/qapplication.cpp:2910
#25 0x00000001000314e8 in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/packages/user/kate/src/kate-18.04.3/kate/main.cpp:595


Further display information:

Version
=======
KWin version: 5.12.6
Qt Version: 5.9.6
Qt compile version: 5.9.6
XCB compile version: 1.13

Operation Mode: X11 only

X11
===
Vendor: The X.Org Foundation
Vendor Release: 12000000
Protocol Version/Revision: 11/0
SHAPE: yes; Version: 0x11
RANDR: yes; Version: 0x14
DAMAGE: yes; Version: 0x11
Composite: yes; Version: 0x4
RENDER: yes; Version: 0xb
XFIXES: yes; Version: 0x50
SYNC: yes; Version: 0x31
GLX: yes; Version: 0x0

Screens
=======
Multi-Head: no
Active screen follows mouse:  yes
Number of Screens: 1

Screen 0:
---------
Name: DVI-0
Geometry: 0,0,1920x1080
Scale: 1
Refresh Rate: 60


Compositing
===========
Compositing is active
Compositing Type: OpenGL
OpenGL vendor string: X.Org
OpenGL renderer string: AMD CAICOS (DRM 2.50.0 / 4.14.48-mc8-easy, LLVM 4.0.0)
OpenGL version string: 3.1 Mesa 18.1.3
OpenGL platform interface: GLX
OpenGL shading language version string: 1.40
Driver: R600G
GPU class: Unknown
OpenGL version: 3.1
GLSL version: 1.40
Mesa version: 18.1.3
X server version: 1.20
Linux kernel version: 4.14.48
Direct rendering: Requires strict binding: no
GLSL shaders:  yes
Texture NPOT support:  yes
Virtual Machine:  no
OpenGL 2 Shaders are used
Painting blocks for vertical retrace:  no
Comment 1 Christoph Cullmann 2018-08-14 21:03:24 UTC
Hi, thanks for your report.
I can see no symbol belonging to KTextEditor/Kate in the backtrace.
I assume you are right to pin this to Qt.
Perhaps it makes sense to just report it in this way there upstream in their Jira, I assume a ppc workstation is not really their standard target and that might give them some hints what could go wrong.
Comment 2 Dominik Haumann 2018-08-15 20:29:54 UTC
This stacktrace does not contains useful information, since it leads into QGraphicsItem, which Kate does not at all use. So this looks very wrong. If you have this issue still after updating Kate, please let us know. For now, we'll close as needs-more-info.
Comment 3 Dominik Haumann 2018-08-15 21:54:17 UTC
I think we fixed this, see bug #397266.

*** This bug has been marked as a duplicate of bug 397266 ***
Comment 4 A. Wilcox (awilfox) 2018-09-27 23:42:59 UTC
Still happens with Kate 18.08.1 / KF 5.50.  Reported upstream at https://bugreports.qt.io/browse/QTBUG-70797