sdl2-compat: Flush the renderer after SDL_RenderFillRect()

From 1628de54f4a89936925bb256119f193f2c9033e1 Mon Sep 17 00:00:00 2001
From: Sam Lantinga <[EMAIL REDACTED]>
Date: Thu, 20 Feb 2025 08:35:31 -0800
Subject: [PATCH] Flush the renderer after SDL_RenderFillRect()

Fixes https://github.com/libsdl-org/sdl2-compat/issues/373
---
 src/sdl2_compat.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/sdl2_compat.c b/src/sdl2_compat.c
index 6b6683f..001ffad 100644
--- a/src/sdl2_compat.c
+++ b/src/sdl2_compat.c
@@ -5385,9 +5385,10 @@ SDL_RenderFillRect(SDL_Renderer *renderer, const SDL_Rect *rect)
         frect.y = (float)rect->y;
         frect.w = (float)rect->w;
         frect.h = (float)rect->h;
-        return SDL3_RenderFillRect(renderer, &frect) ? 0 : -1;
+        retval = SDL3_RenderFillRect(renderer, &frect) ? 0 : -1;
+    } else {
+        retval = SDL3_RenderFillRect(renderer, NULL) ? 0 : -1;
     }
-    retval = SDL3_RenderFillRect(renderer, NULL) ? 0 : -1;
     return retval < 0 ? retval : FlushRendererIfNotBatching(renderer);
 }