Explorar el Código

windows: Fix compiling of XInput code on newer MinGW installs.

Fixes Bugzilla #3609.
Ryan C. Gordon hace 8 años
padre
commit
d844487799
Se han modificado 1 ficheros con 11 adiciones y 0 borrados
  1. 11 0
      src/core/windows/SDL_xinput.h

+ 11 - 0
src/core/windows/SDL_xinput.h

@@ -100,6 +100,14 @@
 #endif
 
 /* typedef's for XInput structs we use */
+
+/* Don't redeclare these on MinGW with gcc >= 5.0.2 */
+#if defined(__MINGW32__) && (((__GNUC__ * 10000) + (__GNUC_MINOR__ * 100) + __GNUC_PATCHLEVEL__) >= 50002)
+#define HAS_XINPUT_GAMEPAD_EX
+#define HAS_XINPUT_STATE_EX
+#endif
+
+#ifndef HAS_XINPUT_GAMEPAD_EX
 typedef struct
 {
     WORD wButtons;
@@ -111,12 +119,15 @@ typedef struct
     SHORT sThumbRY;
     DWORD dwPaddingReserved;
 } XINPUT_GAMEPAD_EX;
+#endif
 
+#ifndef HAS_XINPUT_STATE_EX
 typedef struct
 {
     DWORD dwPacketNumber;
     XINPUT_GAMEPAD_EX Gamepad;
 } XINPUT_STATE_EX;
+#endif
 
 typedef struct
 {