From 330ba7588961d236c1841bccf1e8f5fb8052d1b5 Mon Sep 17 00:00:00 2001 From: "Joseph C. Sible" Date: Tue, 17 Feb 2026 21:05:58 -0500 Subject: [PATCH] Fix #496: Log why get_display_modes needs to use fallback values --- config.cpp | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/config.cpp b/config.cpp index 101a1880..c2f2b41c 100644 --- a/config.cpp +++ b/config.cpp @@ -1075,8 +1075,18 @@ EX vector get_display_modes(char which) { #if SDLVER >= 2 SDL_DisplayMode mode; - for(int m=0; m get_display_modes(char which) { #else SDL_Rect **modes = SDL_ListModes(nullptr, 0); - if(modes && modes != (SDL_Rect**)-1) for(int i=0; modes[i]; i++) { + if(!modes) + println(hlog, "SDL_ListModes: No modes available!"); + else if(modes == (SDL_Rect**)-1) + println(hlog, "SDL_ListModes: All resolutions available."); + else if(!*modes) + println(hlog, "SDL_ListModes returned an empty array"); + else for(int i=0; modes[i]; i++) { if(which == 'x') seen.insert(modes[i]->w); if(which == 'y') seen.insert(modes[i]->h); }