浏览代码

Fixed setting SDL_PROP_DISPLAY_WINDOWS_HMONITOR_POINTER for the initial display

Sam Lantinga 2 周之前
父节点
当前提交
9896dc18e7
共有 1 个文件被更改,包括 3 次插入2 次删除
  1. 3 2
      src/video/windows/SDL_windowsmodes.c

+ 3 - 2
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);