diff options
author | Samuel Rødal <sroedal@trolltech.com> | 2009-06-10 08:21:19 (GMT) |
---|---|---|
committer | Samuel Rødal <sroedal@trolltech.com> | 2009-06-10 08:24:35 (GMT) |
commit | b2edf6ee037decf53c7d2698863ba63742317acc (patch) | |
tree | 9d3c12597aa1a2b45a30cbc9919e08a16da024d2 /src | |
parent | 73fa8dd86f14ab161c84fa9224cd4335f352ba75 (diff) | |
download | Qt-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.cpp | 4 |
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; |