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

crash when calling fillRect() in QPainter::fillRect()

    XMLWordPrintable

Details

    • Bug
    • Resolution: Incomplete
    • Not Evaluated
    • None
    • 5.15.12
    • GUI: Painting
    • None
    • Linux/X11

    Description

      see also https://bugs.gentoo.org/923496

      Gentoo Linux has updated to use QT 5.15.12 and this made a program called speedcrunch always crash on startup. The previous version 5.15.11 used by Gentoo Linux did not have this issue.

      It seems that a virtual function call is crashing, see the following stack trace:

      Thread 1 "speedcrunch" received signal SIGSEGV, Segmentation fault.
      0x0000000000000000 in ?? ()
      (gdb) bt
      #0  0x0000000000000000 in ?? ()
      #1  0x00007ffff722ac20 in QPainter::fillRect(QRect const&, QBrush const&) () from /usr/lib64/libQt5Gui.so.5
      #2  0x00007ffff77a0b24 in QWidgetPrivate::paintBackground(QPainter*, QRegion const&, QFlags<QWidgetPrivate::DrawWidgetFlag>) const ()
         from /usr/lib64/libQt5Widgets.so.5
      #3  0x00007ffff77a4772 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () from /usr/lib64/libQt5Widgets.so.5
      #4  0x00007ffff777705e in ?? () from /usr/lib64/libQt5Widgets.so.5
      #5  0x00007ffff77775fa in ?? () from /usr/lib64/libQt5Widgets.so.5
      #6  0x00007ffff77ccfc8 in ?? () from /usr/lib64/libQt5Widgets.so.5
      #7  0x00007ffff77643fe in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
      #8  0x00007ffff6ac12e8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib64/libQt5Core.so.5
      #9  0x00007ffff6f31f0d in QGuiApplicationPrivate::processExposeEvent(QWindowSystemInterfacePrivate::ExposeEvent*) () from /usr/lib64/libQt5Gui.so.5
      #10 0x00007ffff6f03feb in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Gui.so.5
      #11 0x00007ffff33421b3 in ?? () from /usr/lib64/libQt5XcbQpa.so.5
      #12 0x00007ffff6abfd4b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Core.so.5
      #13 0x00007ffff6ac8170 in QCoreApplication::exec() () from /usr/lib64/libQt5Core.so.5
      #14 0x00005555555ab6ee in main () 

      The crash happened at the following location:

       void QPainter::fillRect(const QRect &r, const QBrush &brush)
      {
          Q_D(QPainter);
          if (!d->engine)
              return;
          if (d->extended && !needsEmulation(brush)) {
              d->extended->fillRect(r, brush);   <------- here
              return;
          }
      

      Attachments

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

        Activity

          People

            vgt Eirik Aavitsland
            doj D J
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes