summaryrefslogtreecommitdiffstats
path: root/src/gui/painting/qpaintengine_raster.cpp
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2021-05-11 15:52:23 +0200
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2021-05-11 19:02:30 +0000
commit242f8ef98527a9e25c8b028382eb4e16fe0ae8d7 (patch)
treecefdbb92d86d68fa50bfff25b9860fdc8a91757f /src/gui/painting/qpaintengine_raster.cpp
parent90fe6301ba43829d7dbe96bae33d5ce43640d726 (diff)
Avoid potential read of uninitialized clip data
Set clip->count to 0 unconditional not just when hasRegionClip or hasRectClip is true. Change-Id: Ib3d1c4dc24373df3d4dbc393241226a8730bb9fc Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io> (cherry picked from commit 9d2850bda946fab28f689d284fd670e5cf361d8f) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'src/gui/painting/qpaintengine_raster.cpp')
-rw-r--r--src/gui/painting/qpaintengine_raster.cpp3
1 files changed, 1 insertions, 2 deletions
diff --git a/src/gui/painting/qpaintengine_raster.cpp b/src/gui/painting/qpaintengine_raster.cpp
index c527b167f6..90f4e048ed 100644
--- a/src/gui/painting/qpaintengine_raster.cpp
+++ b/src/gui/painting/qpaintengine_raster.cpp
@@ -3830,6 +3830,7 @@ void QClipData::initialize()
Q_CHECK_PTR(m_clipLines);
QT_TRY {
allocated = clipSpanHeight;
+ count = 0;
QT_TRY {
if (hasRegionClip) {
const auto rects = clipRegion.begin();
@@ -3841,7 +3842,6 @@ void QClipData::initialize()
int y = 0;
int firstInBand = 0;
- count = 0;
while (firstInBand < numRects) {
const int currMinY = rects[firstInBand].y();
const int currMaxY = currMinY + rects[firstInBand].height();
@@ -3899,7 +3899,6 @@ void QClipData::initialize()
}
const int len = clipRect.width();
- count = 0;
while (y < ymax) {
QSpan *span = m_spans + count;
span->x = xmin;