From 771fa8191a18cef50e981fcb14230a3701003ae8 Mon Sep 17 00:00:00 2001 From: carlo-bramini <30959007+carlo-bramini@users.noreply.github.com> Date: Sun, 24 Dec 2017 14:39:40 +0100 Subject: [PATCH 1/5] Remove redundant include --- src/drivers/fluid_jack.c | 1 - 1 file changed, 1 deletion(-) diff --git a/src/drivers/fluid_jack.c b/src/drivers/fluid_jack.c index 296306e7..bf2e7b84 100644 --- a/src/drivers/fluid_jack.c +++ b/src/drivers/fluid_jack.c @@ -28,7 +28,6 @@ * */ -#include "fluid_sys.h" #include "fluid_synth.h" #include "fluid_adriver.h" #include "fluid_mdriver.h" From 806b3d68e19f6de387f5fae2091b086a96d1c373 Mon Sep 17 00:00:00 2001 From: carlo-bramini <30959007+carlo-bramini@users.noreply.github.com> Date: Sun, 24 Dec 2017 14:41:39 +0100 Subject: [PATCH 2/5] Check for JACK_SUPPORT --- src/drivers/fluid_jack.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/drivers/fluid_jack.c b/src/drivers/fluid_jack.c index bf2e7b84..0a23606e 100644 --- a/src/drivers/fluid_jack.c +++ b/src/drivers/fluid_jack.c @@ -33,6 +33,8 @@ #include "fluid_mdriver.h" #include "fluid_settings.h" +#if JACK_SUPPORT + #include #include @@ -674,3 +676,5 @@ delete_fluid_jack_midi_driver(fluid_midi_driver_t *p) FLUID_FREE (dev); } + +#endif /* JACK_SUPPORT */ From 74122f2d6d5667752dc921fea1eaf54cb1d271cf Mon Sep 17 00:00:00 2001 From: carlo-bramini <30959007+carlo-bramini@users.noreply.github.com> Date: Sun, 24 Dec 2017 14:43:06 +0100 Subject: [PATCH 3/5] Remove redundant include. --- src/drivers/fluid_portaudio.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/drivers/fluid_portaudio.c b/src/drivers/fluid_portaudio.c index 62385627..ea24ddb8 100644 --- a/src/drivers/fluid_portaudio.c +++ b/src/drivers/fluid_portaudio.c @@ -31,7 +31,6 @@ */ #include "fluid_synth.h" -#include "fluid_sys.h" #include "fluid_settings.h" #include "fluid_adriver.h" @@ -362,4 +361,4 @@ delete_fluid_portaudio_driver(fluid_audio_driver_t *p) FLUID_FREE (dev); } -#endif /*#if PORTAUDIO_SUPPORT */ +#endif /* PORTAUDIO_SUPPORT */ From c6a2b0cebaae58f7cef5a20d20bb4ee504762888 Mon Sep 17 00:00:00 2001 From: carlo-bramini <30959007+carlo-bramini@users.noreply.github.com> Date: Sun, 24 Dec 2017 14:46:39 +0100 Subject: [PATCH 4/5] Use FLUID_MUTEX_INIT instead of G_STATIC_MUTEX_INIT --- src/drivers/fluid_jack.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/drivers/fluid_jack.c b/src/drivers/fluid_jack.c index 0a23606e..43f6203b 100644 --- a/src/drivers/fluid_jack.c +++ b/src/drivers/fluid_jack.c @@ -98,7 +98,7 @@ int fluid_jack_driver_process(jack_nframes_t nframes, void *arg); void delete_fluid_jack_midi_driver(fluid_midi_driver_t *p); -static fluid_mutex_t last_client_mutex = G_STATIC_MUTEX_INIT; /* Probably not necessary, but just in case drivers are created by multiple threads */ +static fluid_mutex_t last_client_mutex = FLUID_MUTEX_INIT; /* Probably not necessary, but just in case drivers are created by multiple threads */ static fluid_jack_client_t *last_client = NULL; /* Last unpaired client. For audio/MIDI driver pairing. */ From 20b7143ba962024ada82367626406a1f0d14d087 Mon Sep 17 00:00:00 2001 From: carlo-bramini <30959007+carlo-bramini@users.noreply.github.com> Date: Sun, 24 Dec 2017 14:55:39 +0100 Subject: [PATCH 5/5] Avoid zero-size array if MIDI input unavailable. --- src/drivers/fluid_mdriver.c | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/src/drivers/fluid_mdriver.c b/src/drivers/fluid_mdriver.c index 26e073ce..62b93524 100644 --- a/src/drivers/fluid_mdriver.c +++ b/src/drivers/fluid_mdriver.c @@ -21,6 +21,13 @@ #include "fluid_mdriver.h" #include "fluid_settings.h" +#undef FLUID_MIDI_SUPPORT + +#if ALSA_SUPPORT || JACK_SUPPORT || OSS_SUPPORT || \ + WINMIDI_SUPPORT || MIDISHARE_SUPPORT || COREMIDI_SUPPORT +/* At least an input driver exits */ +#define FLUID_MIDI_SUPPORT 1 +#endif /* ALSA */ #if ALSA_SUPPORT @@ -82,6 +89,8 @@ void fluid_coremidi_driver_settings(fluid_settings_t* settings); #endif +#ifdef FLUID_MIDI_SUPPORT + /* * fluid_mdriver_definition */ @@ -138,7 +147,7 @@ static const struct fluid_mdriver_definition_t fluid_midi_drivers[] = { #endif }; - +#endif /* FLUID_MIDI_SUPPORT */ void fluid_midi_driver_settings(fluid_settings_t* settings) { @@ -187,11 +196,13 @@ void fluid_midi_driver_settings(fluid_settings_t* settings) fluid_settings_add_option(settings, "midi.driver", "coremidi"); #endif +#ifdef FLUID_MIDI_SUPPORT for (i = 0; i < FLUID_N_ELEMENTS(fluid_midi_drivers); i++) { if (fluid_midi_drivers[i].settings != NULL) { fluid_midi_drivers[i].settings(settings); } } +#endif } /** @@ -204,6 +215,7 @@ void fluid_midi_driver_settings(fluid_settings_t* settings) */ fluid_midi_driver_t* new_fluid_midi_driver(fluid_settings_t* settings, handle_midi_event_func_t handler, void* event_handler_data) { +#ifdef FLUID_MIDI_SUPPORT fluid_midi_driver_t* driver = NULL; char *allnames; unsigned int i; @@ -223,7 +235,7 @@ fluid_midi_driver_t* new_fluid_midi_driver(fluid_settings_t* settings, handle_mi FLUID_LOG(FLUID_ERR, "Couldn't find the requested midi driver. Valid drivers are: %s.", allnames ? allnames : "ERROR"); if (allnames) FLUID_FREE (allnames); - +#endif return NULL; } @@ -233,6 +245,7 @@ fluid_midi_driver_t* new_fluid_midi_driver(fluid_settings_t* settings, handle_mi */ void delete_fluid_midi_driver(fluid_midi_driver_t* driver) { +#ifdef FLUID_MIDI_SUPPORT unsigned int i; fluid_return_if_fail(driver != NULL); @@ -242,4 +255,5 @@ void delete_fluid_midi_driver(fluid_midi_driver_t* driver) return; } } +#endif }