From 8702853313d82ff29154dadc888a714c0d45e599 Mon Sep 17 00:00:00 2001 From: Allan Sandfeld Jensen Date: Thu, 9 Nov 2023 12:06:49 +0100 Subject: [PATCH] Fix findNearestColor for semitransparent colors The two destcolors and the buffer are all already premultiplied. This would double premultiply them. Pick-to: 6.5 6.2 Change-Id: I235bee616d8e0033b87c6f96464f0926af7bd29a Reviewed-by: Eirik Aavitsland (cherry picked from commit b637607789a9e92a0dd0ff7fb31b9a92a10ef0bf) Reviewed-by: Qt Cherry-pick Bot --- src/gui/painting/qdrawhelper.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/gui/painting/qdrawhelper.cpp b/src/gui/painting/qdrawhelper.cpp index 117f43db8fd..7029a0e0a3b 100644 --- a/src/gui/painting/qdrawhelper.cpp +++ b/src/gui/painting/qdrawhelper.cpp @@ -513,9 +513,8 @@ static DestFetchProcFP destFetchProcFP[QImage::NImageFormats] = */ static inline QRgb findNearestColor(QRgb color, QRasterBuffer *rbuf) { - QRgb color_0 = qPremultiply(rbuf->destColor0); - QRgb color_1 = qPremultiply(rbuf->destColor1); - color = qPremultiply(color); + const QRgb color_0 = rbuf->destColor0; + const QRgb color_1 = rbuf->destColor1; int r = qRed(color); int g = qGreen(color);