From: Benjamin Otte Date: Wed, 15 Mar 2023 00:45:48 +0000 (+0100) Subject: win32: Fix rowstride math X-Git-Tag: archive/raspbian/4.12.3+ds-1+rpi1~1^2^2^2~22^2~1^2~544^2~2 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=707c63c6f979ac91c8cb120d7c681bfc4fc5278f;p=gtk4.git win32: Fix rowstride math --- diff --git a/gdk/win32/gdkcursor-win32.c b/gdk/win32/gdkcursor-win32.c index dc707d5674..5d388d04b2 100644 --- a/gdk/win32/gdkcursor-win32.c +++ b/gdk/win32/gdkcursor-win32.c @@ -1005,7 +1005,8 @@ gdk_win32_icon_to_pixbuf_libgtk_only (HICON hicon, } bmi; HDC hdc; uint8_t *pixels, *bits; - int rowstride, x, y, w, h; + int x, y, w, h; + gsize rowstride; if (!GDI_CALL (GetIconInfo, (hicon, &ii))) return NULL; @@ -1057,7 +1058,7 @@ gdk_win32_icon_to_pixbuf_libgtk_only (HICON hicon, no_alpha = FALSE; pixels += 4; } - pixels += (w * 4 - rowstride); + pixels += rowstride - w * 4; } /* mask */ @@ -1072,7 +1073,7 @@ gdk_win32_icon_to_pixbuf_libgtk_only (HICON hicon, pixels[3] = 255 - bits[(x + y * w) * 4]; pixels += 4; } - pixels += (w * 4 - rowstride); + pixels += rowstride - w * 4; } } } @@ -1146,7 +1147,7 @@ gdk_win32_icon_to_pixbuf_libgtk_only (HICON hicon, xorp++; } } - pixels += (w * 4 - rowstride); + pixels += rowstride - w * 4; } }