diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2017-08-02 11:35:25 +0200 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2017-08-02 14:52:39 +0000 |
commit | f8df9bb277a7033a2588d320122e745a35ebbe43 (patch) | |
tree | bd4215f9f869cddc2ab118c78eeae29081a40af0 /src | |
parent | 0a5f71c6062d575602ff041fb1b88ec2d8ad92bc (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')
-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 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) { |