소스 검색

Fix crash in SDL_UpdateFullscreenMode calling SetWindowFullscreen with a null display

- This mirrors the check above for fullscreen=true in the unlikely case where there is no primary display detected
Sam Lantinga 1 년 전
부모
커밋
d4794cc714
1개의 변경된 파일4개의 추가작업 그리고 1개의 파일을 삭제
  1. 4 1
      src/video/SDL_video.c

+ 4 - 1
src/video/SDL_video.c

@@ -1765,7 +1765,10 @@ int SDL_UpdateFullscreenMode(SDL_Window *window, SDL_bool fullscreen, SDL_bool c
         if (commit) {
             int ret = 0;
             if (_this->SetWindowFullscreen) {
-                ret = _this->SetWindowFullscreen(_this, window, display ? display : SDL_GetVideoDisplayForFullscreenWindow(window), SDL_FALSE);
+                SDL_VideoDisplay *full_screen_display = display ? display : SDL_GetVideoDisplayForFullscreenWindow(window);
+                if (full_screen_display) {
+                    ret = _this->SetWindowFullscreen(_this, window, full_screen_display, SDL_FALSE);
+                }
             } else {
                 resized = SDL_TRUE;
             }