summaryrefslogtreecommitdiffstats
path: root/src/gui/painting/qpaintengine_raster.cpp
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2017-08-02 11:35:25 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2017-08-02 14:52:39 +0000
commitf8df9bb277a7033a2588d320122e745a35ebbe43 (patch)
treebd4215f9f869cddc2ab118c78eeae29081a40af0 /src/gui/painting/qpaintengine_raster.cpp
parent0a5f71c6062d575602ff041fb1b88ec2d8ad92bc (diff)
Fix precisions check for using fast transforms
The coordinates need to be representable in signed 16-bit not unsigned. Task-number: QTBUG-62251 Change-Id: I1d4aaa2fb90b8f428380277d5b4e416a4672ee6a Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
Diffstat (limited to 'src/gui/painting/qpaintengine_raster.cpp')
-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 eb43453ddb..f99a247270 100644
--- a/src/gui/painting/qpaintengine_raster.cpp
+++ b/src/gui/painting/qpaintengine_raster.cpp
@@ -2339,8 +2339,8 @@ void QRasterPaintEngine::drawImage(const QRectF &r, const QImage &img, const QRe
if (s->matrix.type() > QTransform::TxTranslate || stretch_sr) {
QRectF targetBounds = s->matrix.mapRect(r);
- bool exceedsPrecision = targetBounds.width() > 0xffff
- || targetBounds.height() > 0xffff;
+ bool exceedsPrecision = targetBounds.width() > 0x7fff
+ || targetBounds.height() > 0x7fff;
if (!exceedsPrecision && d->canUseFastImageBlending(d->rasterBuffer->compositionMode, img)) {
if (s->matrix.type() > QTransform::TxScale) {