Commit abe38bca3ed512ecc6ccf899545acf4ee055fa7d

Sam Lantinga 2022-06-18T13:08:58

Support SDL_AUDIODRIVER set to "dsound", which was used by SDL 1.2 Fixes https://github.com/libsdl-org/SDL/issues/5818

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
diff --git a/src/audio/SDL_audio.c b/src/audio/SDL_audio.c
index 8cabcd9..0ce2ae6 100644
--- a/src/audio/SDL_audio.c
+++ b/src/audio/SDL_audio.c
@@ -945,6 +945,15 @@ SDL_AudioInit(const char *driver_name)
             const char *driver_attempt_end = SDL_strchr(driver_attempt, ',');
             size_t driver_attempt_len = (driver_attempt_end != NULL) ? (driver_attempt_end - driver_attempt)
                                                                      : SDL_strlen(driver_attempt);
+#if SDL_AUDIO_DRIVER_DSOUND
+            /* SDL 1.2 uses the name "dsound", so we'll support both. */
+            if (driver_attempt_len == SDL_strlen("dsound") &&
+                (SDL_strncasecmp(driver_attempt, "dsound", driver_attempt_len) == 0)) {
+                driver_attempt = "directsound";
+                driver_attempt_len = SDL_strlen("directsound");
+            }
+#endif
+
 #if SDL_AUDIO_DRIVER_PULSEAUDIO
             /* SDL 1.2 uses the name "pulse", so we'll support both. */
             if (driver_attempt_len == SDL_strlen("pulse") &&