summaryrefslogtreecommitdiff
path: root/68758a879e0c8ecc0d40962516d4e808aa4e15e5.patch
blob: d7b15fe24cfca50004b60c3ea051bb842c3f00e4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
commit 68758a879e0c8ecc0d40962516d4e808aa4e15e5
Author: D G Turner <digitall@scummvm.org>
Date:   Tue Dec 17 04:21:04 2019 +0000

    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.

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];