sdl2-compat: Fixed testautomation --filter video_getWindowDisplayModeNegative

From e9564e0abfa2fd98d622f92c9071453df14a1e08 Mon Sep 17 00:00:00 2001
From: Sam Lantinga <[EMAIL REDACTED]>
Date: Mon, 7 Aug 2023 23:02:47 -0700
Subject: [PATCH] Fixed testautomation --filter
 video_getWindowDisplayModeNegative

---
 src/sdl2_compat.c | 16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

diff --git a/src/sdl2_compat.c b/src/sdl2_compat.c
index ba41c4e..842abf0 100644
--- a/src/sdl2_compat.c
+++ b/src/sdl2_compat.c
@@ -4583,7 +4583,17 @@ DECLSPEC int SDLCALL
 SDL_GetWindowDisplayMode(SDL_Window *window, SDL2_DisplayMode *mode)
 {
     /* returns a pointer to the fullscreen mode to use or NULL for desktop mode */
-    const SDL_DisplayMode *dp = SDL3_GetWindowFullscreenMode(window);
+    const SDL_DisplayMode *dp;
+
+    if (!window) {
+        return SDL_SetError("Invalid window");
+    }
+
+    if (!mode) {
+        return SDL3_InvalidParamError("mode");
+    }
+
+    dp = SDL3_GetWindowFullscreenMode(window);
     if (dp == NULL) {
         /* Desktop mode */
         /* FIXME: is this correct ? */
@@ -4592,9 +4602,7 @@ SDL_GetWindowDisplayMode(SDL_Window *window, SDL2_DisplayMode *mode)
             return -1;
         }
     }
-    if (mode) {
-        DisplayMode_3to2(dp, mode);
-    }
+    DisplayMode_3to2(dp, mode);
     return 0;
 }