platform sdl, fix minor bug in window size handling

This commit is contained in:
kub 2023-02-18 17:28:05 +00:00
parent 5aa5700685
commit c989b8fec1

View file

@ -142,10 +142,11 @@ static void resize_buffers(void)
void plat_video_set_size(int w, int h) void plat_video_set_size(int w, int h)
{ {
if (area.w != w || area.h != h) { if (area.w != w || area.h != h) {
area = (struct area) { w, h };
if (plat_sdl_change_video_mode(w, h, 0) < 0) { if (plat_sdl_change_video_mode(w, h, 0) < 0) {
// failed, revert to original resolution // failed, revert to original resolution
area = (struct area) { g_screen_width,g_screen_height };
plat_sdl_change_video_mode(g_screen_width, g_screen_height, 0); plat_sdl_change_video_mode(g_screen_width, g_screen_height, 0);
w = g_screen_width, h = g_screen_height;
} }
if (!plat_sdl_overlay && !plat_sdl_gl_active) { if (!plat_sdl_overlay && !plat_sdl_gl_active) {
g_screen_width = plat_sdl_screen->w; g_screen_width = plat_sdl_screen->w;
@ -157,7 +158,6 @@ void plat_video_set_size(int w, int h)
g_screen_height = h; g_screen_height = h;
g_screen_ppitch = w; g_screen_ppitch = w;
} }
area = (struct area) { w, h };
} }
} }
@ -389,7 +389,7 @@ void plat_init(void)
#if defined(__RG99__) #if defined(__RG99__)
// do not use the default resolution // do not use the default resolution
plat_video_set_size(320, 240); plat_sdl_change_video_mode(320, 240, 1);
#endif #endif
bgr_to_uyvy_init(); bgr_to_uyvy_init();