From a3105dc30ab42e91c3416d9e76bb6a5a6000850e Mon Sep 17 00:00:00 2001 From: Even Rouault Date: Sat, 22 May 2021 19:06:25 +0200 Subject: [PATCH] mapquantization.c: fix Unintended sign extension (CID 1174447, 1174448, 1174449, 1174450) --- mapquantization.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/mapquantization.c b/mapquantization.c index 68a57e75c3..407a641eb5 100644 --- a/mapquantization.c +++ b/mapquantization.c @@ -495,10 +495,10 @@ mediancut( acolorhist_vector achv, int colors, int sum, unsigned char maxval, in register long r = 0, g = 0, b = 0, a = 0, sum = 0; for ( i = 0; i < clrs; ++i ) { - r += PAM_GETR( achv[indx + i].acolor ) * achv[indx + i].value; - g += PAM_GETG( achv[indx + i].acolor ) * achv[indx + i].value; - b += PAM_GETB( achv[indx + i].acolor ) * achv[indx + i].value; - a += PAM_GETA( achv[indx + i].acolor ) * achv[indx + i].value; + r += (long)PAM_GETR( achv[indx + i].acolor ) * achv[indx + i].value; + g += (long)PAM_GETG( achv[indx + i].acolor ) * achv[indx + i].value; + b += (long)PAM_GETB( achv[indx + i].acolor ) * achv[indx + i].value; + a += (long)PAM_GETA( achv[indx + i].acolor ) * achv[indx + i].value; sum += achv[indx + i].value; } if(sum>0) {