SDL: Ignore SDL_HINT_RENDER_DRIVER set to software when creating a window surface

From 69d361dee1b7f62067c3d03f9d7ee5b5fe92bff2 Mon Sep 17 00:00:00 2001
From: Sam Lantinga <[EMAIL REDACTED]>
Date: Fri, 31 Jan 2025 15:47:59 -0800
Subject: [PATCH] Ignore SDL_HINT_RENDER_DRIVER set to software when creating a
 window surface

We handled the case where software was in a list of render drivers, but not when the hint was set to exactly "software".

Fixes https://github.com/libsdl-org/sdl2-compat/issues/266
---
 src/video/SDL_video.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/video/SDL_video.c b/src/video/SDL_video.c
index 80b1bb025c0ca..466f312d5f6d0 100644
--- a/src/video/SDL_video.c
+++ b/src/video/SDL_video.c
@@ -334,6 +334,9 @@ static bool SDL_CreateWindowTexture(SDL_VideoDevice *_this, SDL_Window *window,
         if (!render_driver) {
             render_driver = SDL_GetHint(SDL_HINT_RENDER_DRIVER);
         }
+        if (render_driver && SDL_strcasecmp(render_driver, SDL_SOFTWARE_RENDERER) == 0) {
+            render_driver = NULL;
+        }
 
         char *render_driver_copy = NULL;
         if (render_driver && *render_driver) {