diff --git a/src/libImaging/Reduce.c b/src/libImaging/Reduce.c index 32d66eefb..b4bfc728e 100644 --- a/src/libImaging/Reduce.c +++ b/src/libImaging/Reduce.c @@ -1157,8 +1157,8 @@ ImagingReduceCorners(Imaging imOut, Imaging imIn, int box[4], int xscale, int ys ss1 += line[xx * 2 + 1]; } } - ((UINT8 *)imOut->image[y])[x + 0] = (ss0 * multiplier) >> 24; - ((UINT8 *)imOut->image[y])[x + 1] = (ss1 * multiplier) >> 24; + ((UINT8 *)imOut->image[y])[x * 2 + 0] = (ss0 * multiplier) >> 24; + ((UINT8 *)imOut->image[y])[x * 2 + 1] = (ss1 * multiplier) >> 24; } } if (box[3] % yscale) { @@ -1176,8 +1176,8 @@ ImagingReduceCorners(Imaging imOut, Imaging imIn, int box[4], int xscale, int ys ss1 += line[xx * 2 + 1]; } } - ((UINT8 *)imOut->image[y])[x + 0] = (ss0 * multiplier) >> 24; - ((UINT8 *)imOut->image[y])[x + 1] = (ss1 * multiplier) >> 24; + ((UINT8 *)imOut->image[y])[x * 2 + 0] = (ss0 * multiplier) >> 24; + ((UINT8 *)imOut->image[y])[x * 2 + 1] = (ss1 * multiplier) >> 24; } } if (box[2] % xscale && box[3] % yscale) { @@ -1194,8 +1194,8 @@ ImagingReduceCorners(Imaging imOut, Imaging imIn, int box[4], int xscale, int ys ss1 += line[xx * 2 + 1]; } } - ((UINT8 *)imOut->image[y])[x + 0] = (ss0 * multiplier) >> 24; - ((UINT8 *)imOut->image[y])[x + 1] = (ss1 * multiplier) >> 24; + ((UINT8 *)imOut->image[y])[x * 2 + 0] = (ss0 * multiplier) >> 24; + ((UINT8 *)imOut->image[y])[x * 2 + 1] = (ss1 * multiplier) >> 24; } } else if (imIn->pixelsize == 4) { if (box[2] % xscale) {