SDL_mixer: clear error if loading optional gme_set_autoload_playback_limit fails.

From 9dcd33b1958899b1ff369170638764c6d758a102 Mon Sep 17 00:00:00 2001
From: Ozkan Sezer <[EMAIL REDACTED]>
Date: Fri, 23 Dec 2022 06:33:00 +0300
Subject: [PATCH] clear error if loading optional
 gme_set_autoload_playback_limit fails.

also a minor style clean-up.
---
 src/codecs/music_gme.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/src/codecs/music_gme.c b/src/codecs/music_gme.c
index 67569e28..b0b46a36 100644
--- a/src/codecs/music_gme.c
+++ b/src/codecs/music_gme.c
@@ -93,6 +93,9 @@ static int GME_Load(void)
         FUNCTION_LOADER(gme_delete, void (*)(Music_Emu*))
 #if defined(GME_DYNAMIC)
         gme.gme_set_autoload_playback_limit = (void (*)(Music_Emu*,int)) SDL_LoadFunction(gme.handle, "gme_set_autoload_playback_limit");
+        if (!gme.gme_set_autoload_playback_limit) {
+            SDL_ClearError();   /* gme_set_autoload_playback_limit is optional. */
+        }
 #elif (GME_VERSION >= 0x000603)
         gme.gme_set_autoload_playback_limit = gme_set_autoload_playback_limit;
 #else
@@ -142,7 +145,7 @@ static void GME_Delete(void *context);
 static void GME_SetVolume(void *music_p, int volume)
 {
     GME_Music *music = (GME_Music*)music_p;
-    double v = SDL_floor(((double)(volume) * music->gain) + 0.5);
+    double v = SDL_floor(((double)volume * music->gain) + 0.5);
     music->volume = (int)v;
 }
 
@@ -377,10 +380,8 @@ static double GME_Duration(void *music_p)
     GME_Music *music = (GME_Music*)music_p;
     if (music->has_track_length) {
         return (double)(music->track_length) / 1000.0;
-    } else {
-
-        return -1.0;
     }
+    return -1.0;
 }
 
 static int GME_GetNumTracks(void *music_p)