SDL: cocoa: Don't crash if moving a message box created before SDL_Init.

From 218c3dbb348e042e02072f950915662a6f345e94 Mon Sep 17 00:00:00 2001
From: "Ryan C. Gordon" <[EMAIL REDACTED]>
Date: Tue, 26 Jul 2022 14:45:26 -0400
Subject: [PATCH] cocoa: Don't crash if moving a message box created before
 SDL_Init.

Fixes #5928.
---
 src/video/cocoa/SDL_cocoamouse.m | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/src/video/cocoa/SDL_cocoamouse.m b/src/video/cocoa/SDL_cocoamouse.m
index fcee0a738c0..da5ffac69c5 100644
--- a/src/video/cocoa/SDL_cocoamouse.m
+++ b/src/video/cocoa/SDL_cocoamouse.m
@@ -400,6 +400,12 @@ + (NSCursor *)invisibleCursor
     SDL_Window *window;
     NSWindow *nswindow = [event window];
 
+    /* You might land in this function before SDL_Init if showing a message box.
+       Don't derefence a NULL pointer if that happens. */
+    if (_this == NULL) {
+        return;
+    }
+
     for (window = _this->windows; window; window = window->next) {
         SDL_WindowData *data = (__bridge SDL_WindowData *)window->driverdata;
         if (data && data.nswindow == nswindow) {