From 5ae90ef67a957307e857d9e819be72326d5aa464 Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Thu, 21 Sep 2017 01:22:40 -0700 Subject: [PATCH] Fixed bug 3788 - software renderer crashes in SDL_RenderCopyEx with rotation and dstrect w or h is 0 Anthony This is what's making the software renderer crash with rotated destination rectangles of w or h = 0: SDL_SetHint(SDL_HINT_RENDER_SCALE_QUALITY, "2"); --- src/render/software/SDL_rotate.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/render/software/SDL_rotate.c b/src/render/software/SDL_rotate.c index 6b6c2fa09..44762048f 100644 --- a/src/render/software/SDL_rotate.c +++ b/src/render/software/SDL_rotate.c @@ -257,7 +257,7 @@ _transformSurfaceRGBA(SDL_Surface * src, SDL_Surface * dst, int cx, int cy, int dy = (sdy >> 16); if (flipx) dx = sw - dx; if (flipy) dy = sh - dy; - if ((unsigned)dx < (unsigned)sw && (unsigned)dy < (unsigned)sh) { + if ((dx > -1) && (dy > -1) && (dx < (src->w-1)) && (dy < (src->h-1))) { sp = (tColorRGBA *) ((Uint8 *) src->pixels + src->pitch * dy) + dx; c00 = *sp; sp += 1;