Hello,
I'm using Qt 4.5.1 and qwt 5.2.0 on Windows XP (Eclipse, g++). I have a graphing widget which inherits from QwtPlot. This is used to display often updated measurement data which is contained in a single curve. The graphing widget itself is refreshed with update() in the main thread using a timer, and the actual curve data is set from a measurement thread. Access to these functions is behind a single mutex. The plot also uses QwtPlotzoomer. The application seems to work fine when I don't disturb it while the plot is being updated, but I'm bumping to an access violation somewhat randomly if I alt-tab back on the application during a wrong time.
If I run the application under gdb, I also see the following warnings when I alt-tab in/out:
warning
: QWidget::repaint: Recursive repaint detected
warning
: QPainter::begin: Paint device returned engine
== 0, type
: 1
warning: QWidget::repaint: Recursive repaint detected
warning: QPainter::begin: Paint device returned engine == 0, type: 1
To copy to clipboard, switch view to plain text mode
I have no repaint()s in the application itself, so they are performed somewhere within q(w)t. Also autoReplot is turned off.
The backtrace from Dr. Mingw is contained in the following post (character limit). gdb backtrace is not included due to some symbol-resolving problem.
Bookmarks