SDL: Fixed setting SDL_PROP_DISPLAY_WINDOWS_HMONITOR_POINTER for the initial display

From 9896dc18e7fe12e4ce034fe77ac51a8d5730830e Mon Sep 17 00:00:00 2001
From: Sam Lantinga <[EMAIL REDACTED]>
Date: Mon, 24 Nov 2025 13:38:21 -0800
Subject: [PATCH] Fixed setting SDL_PROP_DISPLAY_WINDOWS_HMONITOR_POINTER for
 the initial display

---
 src/video/windows/SDL_windowsmodes.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/video/windows/SDL_windowsmodes.c b/src/video/windows/SDL_windowsmodes.c
index e287f01d882e9..48b9b6c28ca64 100644
--- a/src/video/windows/SDL_windowsmodes.c
+++ b/src/video/windows/SDL_windowsmodes.c
@@ -665,11 +665,12 @@ static void WIN_AddDisplay(SDL_VideoDevice *_this, HMONITOR hMonitor, const MONI
 #ifdef HAVE_DXGI1_6_H
     WIN_GetHDRProperties(_this, hMonitor, &display.HDR);
 #endif
-    if (SDL_AddVideoDisplay(&display, false)) {
+    SDL_DisplayID displayID = SDL_AddVideoDisplay(&display, false);
+    if (displayID) {
         // The mode is owned by the video subsystem
         mode.internal = NULL;
 
-        SDL_PropertiesID props = SDL_GetDisplayProperties(display.id);
+        SDL_PropertiesID props = SDL_GetDisplayProperties(displayID);
         SDL_SetPointerProperty(props, SDL_PROP_DISPLAY_WINDOWS_HMONITOR_POINTER, hMonitor);
     } else {
         SDL_free(displaydata);