aboutsummaryrefslogtreecommitdiff
path: root/audio
diff options
context:
space:
mode:
authorD G Turner2019-12-17 04:21:04 +0000
committerD G Turner2019-12-17 04:21:04 +0000
commit68758a879e0c8ecc0d40962516d4e808aa4e15e5 (patch)
tree4aea7dd9110d0e255dc698632f5f93ea5ed627a0 /audio
parent897e2f363c94a10077b64d70ba19de2cd43ce1fa (diff)
downloadscummvm-rg350-68758a879e0c8ecc0d40962516d4e808aa4e15e5.tar.gz
scummvm-rg350-68758a879e0c8ecc0d40962516d4e808aa4e15e5.tar.bz2
scummvm-rg350-68758a879e0c8ecc0d40962516d4e808aa4e15e5.zip
AUDIO: Really Fix Compilation Against Fluidsynth v2.1+
The previous fix did not work as the forbidden exception had no effect since scummsys.h and thus forbidden.h had already been included prior to the fluidsynth header being included. This also meant that undefining the exception define after the header would have had no effect anyway. This new solution was suggest by eriktorbjorn on bug #11278 and should avoid the need to add an exception which would persist over the entire source file.
Diffstat (limited to 'audio')
-rw-r--r--audio/softsynth/fluidsynth.cpp15
1 files changed, 7 insertions, 8 deletions
diff --git a/audio/softsynth/fluidsynth.cpp b/audio/softsynth/fluidsynth.cpp
index 33a74a1524..f8c2412492 100644
--- a/audio/softsynth/fluidsynth.cpp
+++ b/audio/softsynth/fluidsynth.cpp
@@ -20,10 +20,16 @@
*
*/
-#include "common/scummsys.h"
+#include "config.h"
#ifdef USE_FLUIDSYNTH
+// Fluidsynth v2.1+ uses printf in one of it's headers,
+// include/fluidsynth/log.h around line 82 so need to include this
+// prior scummsys.h inclusion and thus forbidden.h
+#include <fluidsynth.h>
+
+#include "common/scummsys.h"
#include "common/config-manager.h"
#include "common/error.h"
#include "common/system.h"
@@ -35,13 +41,6 @@
#include "backends/platform/ios7/ios7_common.h"
#endif
-// Fluidsynth v2.1+ uses printf in one of it's headers, so this is
-// needed to allow compilation, as reported by eriktorbjorn on 20191215
-// This is in include/fluidsynth/log.h around line 82
-#define FORBIDDEN_SYMBOL_EXCEPTION_printf
-#include <fluidsynth.h>
-#undef FORBIDDEN_SYMBOL_EXCEPTION_printf
-
class MidiDriver_FluidSynth : public MidiDriver_Emulated {
private:
MidiChannel_MPU401 _midiChannels[16];