diff options
Diffstat (limited to 'src/osd/windows/video.c')
-rw-r--r-- | src/osd/windows/video.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/osd/windows/video.c b/src/osd/windows/video.c index d135d7a2bc9..23854c18554 100644 --- a/src/osd/windows/video.c +++ b/src/osd/windows/video.c @@ -382,8 +382,10 @@ void windows_osd_interface::extract_video_config() video_config.mode = VIDEO_MODE_DDRAW; else if (strcmp(stemp, "gdi") == 0) video_config.mode = VIDEO_MODE_GDI; +#if defined (USE_BGFX) else if (strcmp(stemp, "bgfx") == 0) video_config.mode = VIDEO_MODE_BGFX; +#endif else if (strcmp(stemp, "none") == 0) { video_config.mode = VIDEO_MODE_NONE; @@ -508,6 +510,12 @@ static void get_resolution(const char *defdata, const char *data, osd_window_con return; data = defdata; } - if (sscanf(data, "%dx%d@%d", &config->width, &config->height, &config->refresh) < 2 && report_error) + + if (sscanf(data, "%dx%dx%d", &config->width, &config->height, &config->depth) < 2 && report_error) osd_printf_error("Illegal resolution value = %s\n", data); + + const char * at_pos = strchr(data, '@'); + if (at_pos) + if (sscanf(at_pos + 1, "%d", &config->refresh) < 1 && report_error) + osd_printf_error("Illegal refresh rate in resolution value = %s\n", data); } |