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); }