From 9d32e0e88130d166920f439f7a691c806096e998 Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Tue, 21 Oct 2025 10:43:04 -0700 Subject: [PATCH] Fixed data alignment for PNG cursors (thanks @Kontrabant!) --- src/video/windows/SDL_windowsmouse.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/video/windows/SDL_windowsmouse.c b/src/video/windows/SDL_windowsmouse.c index 273678558..db4d42d6b 100644 --- a/src/video/windows/SDL_windowsmouse.c +++ b/src/video/windows/SDL_windowsmouse.c @@ -196,7 +196,18 @@ static bool FillIconEntry(CURSORICONFILEDIRENTRY *entry, SDL_Surface *surface, i static bool WriteIconSurface(SDL_IOStream *dst, SDL_Surface *surface) { - return SDL_SavePNG_IO(surface, dst, false); + if (!SDL_SavePNG_IO(surface, dst, false)) { + return false; + } + + // Image data offsets must be WORD aligned + Sint64 offset = SDL_TellIO(dst); + if (offset & 1) { + if (!SDL_WriteU8(dst, 0)) { + return false; + } + } + return true; } #else