summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorSamuel Rødal <sroedal@trolltech.com>2009-06-10 08:21:19 (GMT)
committerSamuel Rødal <sroedal@trolltech.com>2009-06-10 08:24:35 (GMT)
commitb2edf6ee037decf53c7d2698863ba63742317acc (patch)
tree9d3c12597aa1a2b45a30cbc9919e08a16da024d2 /src
parent73fa8dd86f14ab161c84fa9224cd4335f352ba75 (diff)
downloadQt-b2edf6ee037decf53c7d2698863ba63742317acc.zip
Qt-b2edf6ee037decf53c7d2698863ba63742317acc.tar.gz
Qt-b2edf6ee037decf53c7d2698863ba63742317acc.tar.bz2
Fixed clipping bug in raster paint engine causing rendering artifacts.
The artifacts were visible in the mainwindow demo when dragging the top toolbar separator left and right. We need to check that rect clipping is actually activated before we compare the new clip rect with the old, otherwise the clip type and clip bound flags won't get updated.
Diffstat (limited to 'src')
-rw-r--r--src/gui/painting/qpaintengine_raster.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/gui/painting/qpaintengine_raster.cpp b/src/gui/painting/qpaintengine_raster.cpp
index 0810bb9..7ed2dfd 100644
--- a/src/gui/painting/qpaintengine_raster.cpp
+++ b/src/gui/painting/qpaintengine_raster.cpp
@@ -4311,7 +4311,7 @@ QClipData::QClipData(int height)
clipSpanHeight = height;
m_clipLines = 0;
- allocated = height;
+ allocated = 0;
m_spans = 0;
xmin = xmax = ymin = ymax = 0;
count = 0;
@@ -4479,7 +4479,7 @@ void QClipData::fixup()
*/
void QClipData::setClipRect(const QRect &rect)
{
- if (rect == clipRect)
+ if (hasRectClip && rect == clipRect)
return;
// qDebug() << "setClipRect" << clipSpanHeight << count << allocated << rect;