foxygit / doom Log in
commit 459992fae806f5655fd755edd2d30ed4d87272b7
Author:     Roman Fomin <rfomin@gmail.com>
AuthorDate: Fri Jan 14 14:56:26 2022 +0700
Commit:     Roman Fomin <rfomin@gmail.com>
CommitDate: Fri Jan 14 14:56:26 2022 +0700

    Fix Fluidsynth pause on Windows
---
 src/i_sdlmusic.c | 30 ++++++++++++++++++++----------
 1 file changed, 20 insertions(+), 10 deletions(-)

diff --git a/src/i_sdlmusic.c b/src/i_sdlmusic.c
index 632dc02b..b85e1a1c 100644
--- a/src/i_sdlmusic.c
+++ b/src/i_sdlmusic.c
@@ -342,12 +342,17 @@ static void I_SDL_PauseSong(void)
     }

 #if defined(_WIN32)
-    I_WIN_PauseSong();
-#else
-    musicpaused = true;
-
-    UpdateMusicVolume();
+    if (win_midi_stream_opened)
+    {
+        I_WIN_PauseSong();
+    }
+    else
 #endif
+    {
+        musicpaused = true;
+
+        UpdateMusicVolume();
+    }
 }

 static void I_SDL_ResumeSong(void)
@@ -358,12 +363,17 @@ static void I_SDL_ResumeSong(void)
     }

 #if defined(_WIN32)
-    I_WIN_ResumeSong();
-#else
-    musicpaused = false;
-
-    UpdateMusicVolume();
+    if (win_midi_stream_opened)
+    {
+        I_WIN_ResumeSong();
+    }
+    else
 #endif
+    {
+        musicpaused = false;
+
+        UpdateMusicVolume();
+    }
 }

 static void I_SDL_StopSong(void)