Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/dosbox-staging/dosbox-staging.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGranMinigun <11149380+GranMinigun@users.noreply.github.com>2022-08-08 08:44:26 +0300
committerGranMinigun <11149380+GranMinigun@users.noreply.github.com>2022-08-08 11:43:01 +0300
commit73f52887c74f287f1e2b37e88cb466f988b72542 (patch)
treea17b550b32c6133f5534507efdff3047861ddba5
parentf0670763fe34f536ea2b06eea4d4eb0c58b02ab1 (diff)
Move texture renderer override hintgm/fix-renderer-override-1
Fixes a regression caused by moving renderer creation. It was not possible to set SDL renderer backend, due to hint being set long after the renderer was created.
-rw-r--r--src/gui/sdlmain.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/gui/sdlmain.cpp b/src/gui/sdlmain.cpp
index b1cc4dba4..4f1cbf69d 100644
--- a/src/gui/sdlmain.cpp
+++ b/src/gui/sdlmain.cpp
@@ -1692,9 +1692,6 @@ dosurface:
break; // SCREEN_SURFACE
case SCREEN_TEXTURE: {
- if (sdl.render_driver != "auto")
- SDL_SetHint(SDL_HINT_RENDER_DRIVER,
- sdl.render_driver.c_str());
SDL_SetHint(SDL_HINT_RENDER_VSYNC, wants_vsync ? "1" : "0");
if (!SetupWindowScaled(SCREEN_TEXTURE, false)) {
@@ -3211,6 +3208,13 @@ static void set_output(Section *sec, bool should_stretch_pixels)
sdl.render_driver = section->Get_string("texture_renderer");
lowcase(sdl.render_driver);
+ if (sdl.render_driver != "auto") {
+ if (SDL_SetHint(SDL_HINT_RENDER_DRIVER,
+ sdl.render_driver.c_str()) == SDL_FALSE) {
+ LOG_WARNING("SDL: Failed to set '%s' texture renderer driver; falling back to automatic selection",
+ sdl.render_driver.c_str());
+ }
+ }
sdl.desktop.window.show_decorations = section->Get_bool("window_decorations");