From f1b603ac6a98f8a2f5f002a8fdd5284e25362b14 Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Tue, 20 Oct 2020 11:51:23 -0700 Subject: [PATCH] Fixed bug 5323 - SDL_SetWindowMaximumSize fails if Width or Height is equal to minimum Height or Width batyastudios Basicly there is problem and somewhat a solution: https://discourse.libsdl.org/t/setwindowmaximumsize-bug/28267 If you SDL_SetWindowMaximumSize() after SDL_SetWindowMinimumSize() with one of axes have the same value, function will have no effect. This: (line 2144@SDL_video.c) if (max_w <= window->min_w || max_h <= window->min_h) { SDL_SetError("SDL_SetWindowMaximumSize(): Tried to set maximum size smaller than minimum size"); return; } May be changed to this: if (max_w < window->min_w || max_h < window->min_h) { SDL_SetError("SDL_SetWindowMaximumSize(): Tried to set maximum size smaller than minimum size"); return; } --- src/video/SDL_video.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/video/SDL_video.c b/src/video/SDL_video.c index 36d42ce1e..3980e26ff 100644 --- a/src/video/SDL_video.c +++ b/src/video/SDL_video.c @@ -2152,8 +2152,8 @@ SDL_SetWindowMinimumSize(SDL_Window * window, int min_w, int min_h) return; } - if ((window->max_w && min_w >= window->max_w) || - (window->max_h && min_h >= window->max_h)) { + if ((window->max_w && min_w > window->max_w) || + (window->max_h && min_h > window->max_h)) { SDL_SetError("SDL_SetWindowMinimumSize(): Tried to set minimum size larger than maximum size"); return; } @@ -2195,7 +2195,7 @@ SDL_SetWindowMaximumSize(SDL_Window * window, int max_w, int max_h) return; } - if (max_w <= window->min_w || max_h <= window->min_h) { + if (max_w < window->min_w || max_h < window->min_h) { SDL_SetError("SDL_SetWindowMaximumSize(): Tried to set maximum size smaller than minimum size"); return; }