Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-70797

Segmentation fault from null pointer dereference in mapToGlobalTransform

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • P2: Important
    • None
    • 5.9.6
    • Widgets: GraphicsView
    • None
    • Linux/X11

    Description

      This was originally reported downstream at KDE, but they agree that this is likely a bug in Qt, not KDE software.

      Steps to reproduce:

      1. Use Kate (KDE text editor) to 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.

      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.56-mc9-easy, LLVM 6.0.1)
      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.56
      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

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            bibr Andreas Aardal Hanssen
            awilfox A. Wilcox
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:

              Gerrit Reviews

                There are no open Gerrit changes