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

QProgressBar with lineargradient crashes on solaris sparc

    XMLWordPrintable

Details

    • Bug
    • Resolution: Incomplete
    • Not Evaluated
    • None
    • 4.8.2
    • GUI: Painting
    • None
    • -SunOS 5.10 Generic_127111-05 sun4u sparc SUNW,A70
      -gcc 3.4.6
      -qt 4.8.2

    Description

      #include <QApplication>
      #include <QProgressBar>
      
      #include <iostream>
      
      using namespace std;
      
      int main(int argc, char *argv[])
      {
      	QApplication app(argc, argv);
      	QProgressBar *bar = new QProgressBar();
      	bar->setRange(0,100);
      	//COMMENT OUT THIS LINE AND THE PROGRAM WILL WORK CORRECTLY
      	//bar->setStyleSheet("QProgressBar:horizontal {border: 1px solid gray; border-radius: 3px; background: #333333; padding: 1px; height: 10px; text-align: left;} QProgressBar::chunk:horizontal {background: qlineargradient(x1:0, y1:1, x2:1, y2:1, stop:0 green, stop:1 white);}");
      	bar->setValue(0);
      	bar->show(); 
      	long count = 0;
      	int i=0;
      	int n = 0;
      	while(count < 100000000) {
      		if ((n = count%1000000) == 0) { 
      			cout << "Count = " << count << endl;
      			bar->setValue(i++);
      			QApplication::processEvents();
      		}
      		++count;
      	}
      	return app.exec();
      }
      

      The above snippet works on Windows 7, 64-bit CentOS 5.8 and Solaris x86 just not on a SPARC machine. The application becomes unresponsive.

      ^C
      Program received signal SIGINT, Interrupt.
      0xfe7ca2a8 in qt_isExtendedRadialGradient ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4
      (gdb) bt
      #0 0xfe7ca2a8 in qt_isExtendedRadialGradient ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #1 0xfe7cd36c in QBrush::isOpaque ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #2 0xfe897e08 in QSpanData::setup ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #3 0xfe898c00 in QRasterPaintEngine::updateBrush ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #4 0xfe899120 in QRasterPaintEngine::fill ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #5 0xfe7e8f2c in QEmulationPaintEngine::fill ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #6 0xfe7f80e4 in QPaintEngineEx::draw ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #7 0xfe7f83b4 in QPaintEngineEx::drawRects ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #8 0xfe809928 in QPainter::drawRects ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #9 0xfe809d2c in QPainter::fillRect ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #10 0xfea1ded0 in QRenderRule::drawBackground ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #11 0xfea1e210 in QRenderRule::drawFrame ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #12 0xfea1e268 in QRenderRule::drawRule ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #13 0xfea34b00 in QStyleSheetStyle::drawControl ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #14 0xfea091d4 in QCommonStyle::drawControl ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #15 0xfea88df8 in QWindowsStyle::drawControl ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #16 0xfea2e994 in QStyleSheetStyle::drawControl ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #17 0xfeb3c75c in QProgressBar::paintEvent ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #18 0xfe6f6b2c in QWidget::event ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #19 0xfeb3c518 in QProgressBar::event ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #20 0xfe6a06d8 in QApplicationPrivate::notify_helper ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #21 0xfe6a9a84 in QApplication::notify ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #22 0xfdde899c in QCoreApplication::notifyInternal ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtCore.so.4

      #23 0xfe6f3e4c in QWidgetPrivate::drawWidget ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #24 0xfe6f46b0 in QWidgetPrivate::paintSiblingsRecursive ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #25 0xfe6f4578 in QWidgetPrivate::paintSiblingsRecursive ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #26 0xfe6f4578 in QWidgetPrivate::paintSiblingsRecursive ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #27 0xfe6f4578 in QWidgetPrivate::paintSiblingsRecursive ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #28 0xfe6f4578 in QWidgetPrivate::paintSiblingsRecursive ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #29 0xfe6f38d0 in QWidgetPrivate::drawWidget ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #30 0xfe6f46b0 in QWidgetPrivate::paintSiblingsRecursive ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #31 0xfe6f38d0 in QWidgetPrivate::drawWidget ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #32 0xfe6f46b0 in QWidgetPrivate::paintSiblingsRecursive ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #33 0xfe6f38d0 in QWidgetPrivate::drawWidget ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #34 0xfe6f46b0 in QWidgetPrivate::paintSiblingsRecursive ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #35 0xfe6f4578 in QWidgetPrivate::paintSiblingsRecursive ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #36 0xfe6f38d0 in QWidgetPrivate::drawWidget ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #37 0xfe6f46b0 in QWidgetPrivate::paintSiblingsRecursive ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #38 0xfe6f38d0 in QWidgetPrivate::drawWidget ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #39 0xfe6f46b0 in QWidgetPrivate::paintSiblingsRecursive ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #40 0xfe6f38d0 in QWidgetPrivate::drawWidget ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #41 0xfe6f46b0 in QWidgetPrivate::paintSiblingsRecursive ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #42 0xfe6f38d0 in QWidgetPrivate::drawWidget ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #43 0xfe6f46b0 in QWidgetPrivate::paintSiblingsRecursive ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #44 0xfe6f38d0 in QWidgetPrivate::drawWidget ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #45 0xfe6f46b0 in QWidgetPrivate::paintSiblingsRecursive ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #46 0xfe6f38d0 in QWidgetPrivate::drawWidget ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #47 0xfe6f46b0 in QWidgetPrivate::paintSiblingsRecursive ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #48 0xfe6f4578 in QWidgetPrivate::paintSiblingsRecursive ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #49 0xfe6f38d0 in QWidgetPrivate::drawWidget ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #50 0xfe6f46b0 in QWidgetPrivate::paintSiblingsRecursive ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #51 0xfe6f38d0 in QWidgetPrivate::drawWidget ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #52 0xfe8f49ec in QWidgetBackingStore::sync ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #53 0xfe6e3178 in QWidgetPrivate::syncBackingStore ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #54 0xfe6f7054 in QWidget::event ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #55 0xfeb06a5c in QMainWindow::event ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #56 0xfe6a06d8 in QApplicationPrivate::notify_helper ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #57 0xfe6a9a84 in QApplication::notify ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #58 0xfdde899c in QCoreApplication::notifyInternal ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtCore.so.4

      #59 0xfddebe48 in QCoreApplicationPrivate::sendPostedEvents ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtCore.so.4

      #60 0xfde22098 in QEventDispatcherUNIX::processEvents ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtCore.so.4

      #61 0xfe74cc60 in QEventDispatcherX11::processEvents ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtGui.so.4

      #62 0xfdde78c0 in QEventLoop::processEvents ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtCore.so.4

      #63 0xfdde7d68 in QEventLoop::exec ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtCore.so.4

      #64 0xfddec250 in QCoreApplication::exec ()
      from /home/dementt/dev/MIReflector/Source/lib/libQtCore.so.4

      #65 0x00066ffc in main (argc=1, argv=0xffbff9e4) at main.cpp:208

      Attachments

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

        Activity

          People

            rodal Samuel Rødal
            qtcomsupport Qt Support
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes