Details
-
Bug
-
Resolution: Incomplete
-
Not Evaluated
-
None
-
5.15.12
-
None
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; }