From 7e5daa65a8699f6640bf51272c925f4307164f9f Mon Sep 17 00:00:00 2001 From: Thomas Bernard Date: Fri, 7 Oct 2022 00:54:22 +0200 Subject: [PATCH] fix Surface_to_bytefield() Each line of the SDL surface use "pitch" bytes. see https://pulkomandy.tk/projects/GrafX2/ticket/171 --- src/sdlscreen.c | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/src/sdlscreen.c b/src/sdlscreen.c index b4c4a450..7f0c264c 100644 --- a/src/sdlscreen.c +++ b/src/sdlscreen.c @@ -373,17 +373,11 @@ byte * Surface_to_bytefield(SDL_Surface *source, byte * dest) byte *src; byte *dest_ptr; int y; - int remainder; // Support seulement des images 256 couleurs if (source->format->BytesPerPixel != 1) return NULL; - if (source->w & 3) - remainder=4-(source->w&3); - else - remainder=0; - if (dest==NULL) dest=(byte *)malloc(source->w*source->h); @@ -393,7 +387,7 @@ byte * Surface_to_bytefield(SDL_Surface *source, byte * dest) { memcpy(dest_ptr, src,source->w); dest_ptr += source->w; - src += source->w + remainder; + src += source->pitch; } return dest;