From 99ad5b2f2d564e4ab8f661d05b97c87d6bdc03fa Mon Sep 17 00:00:00 2001
From: "Ryan C. Gordon" <[EMAIL REDACTED]>
Date: Mon, 1 Jun 2026 13:18:05 -0400
Subject: [PATCH] fluidsynth: Let apps set custom string settings.
(cherry picked from commit d1a9d2548293beed13850e410312241be9b8503d)
---
src/decoder_fluidsynth.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/decoder_fluidsynth.c b/src/decoder_fluidsynth.c
index b5efc733..4de752e5 100644
--- a/src/decoder_fluidsynth.c
+++ b/src/decoder_fluidsynth.c
@@ -50,6 +50,7 @@ SDL_ELF_NOTE_DLOPEN(
MIX_LOADER_FUNCTION(true,int,fluid_player_get_total_ticks,(fluid_player_t *)) \
MIX_LOADER_FUNCTION(true,int,fluid_settings_setint,(fluid_settings_t*, const char*, int)) \
MIX_LOADER_FUNCTION(true,int,fluid_settings_setnum,(fluid_settings_t*, const char*, double)) \
+ MIX_LOADER_FUNCTION(true,int,fluid_settings_setstr,(fluid_settings_t*, const char*, const char *)) \
MIX_LOADER_FUNCTION(true,int,fluid_settings_getnum,(fluid_settings_t*, const char*, double*)) \
MIX_LOADER_FUNCTION(true,int,fluid_sfloader_set_callbacks,(fluid_sfloader_t *,fluid_sfloader_callback_open_t,fluid_sfloader_callback_read_t,fluid_sfloader_callback_seek_t,fluid_sfloader_callback_tell_t,fluid_sfloader_callback_close_t)) \
MIX_LOADER_FUNCTION(true,void,fluid_synth_add_sfloader,(fluid_synth_t *, fluid_sfloader_t *)) \
@@ -259,6 +260,9 @@ static void SDLCALL SetCustomFluidsynthProperties(void *userdata, SDL_Properties
case SDL_PROPERTY_TYPE_FLOAT:
fluidsynth.fluid_settings_setnum(tdata->settings, name, (double) SDL_GetFloatProperty(props, name, 0.0f));
break;
+ case SDL_PROPERTY_TYPE_STRING:
+ fluidsynth.fluid_settings_setstr(tdata->settings, name, SDL_GetStringProperty(props, name, ""));
+ break;
default: break; // oh well.
}
}