Explorar el Código

Patched stdlib changes to compile on Windows.

Ryan C. Gordon hace 11 años
padre
commit
31caa22d30
Se han modificado 3 ficheros con 5 adiciones y 4 borrados
  1. 3 1
      src/atomic/SDL_atomic.c
  2. 1 2
      src/stdlib/SDL_getenv.c
  3. 1 1
      src/stdlib/SDL_string.c

+ 3 - 1
src/atomic/SDL_atomic.c

@@ -152,7 +152,9 @@ SDL_AtomicSet(SDL_atomic_t *a, int v)
 void*
 SDL_AtomicSetPtr(void **a, void *v)
 {
-#ifdef HAVE_MSC_ATOMICS
+#if defined(HAVE_MSC_ATOMICS) && (_M_IX86)
+    return (void *) _InterlockedExchange((long *)a, (long) v);
+#elif defined(HAVE_MSC_ATOMICS) && (!_M_IX86)
     return _InterlockedExchangePointer(a, v);
 #elif defined(HAVE_GCC_ATOMICS)
     return __sync_lock_test_and_set(a, v);

+ 1 - 2
src/stdlib/SDL_getenv.c

@@ -26,13 +26,12 @@
 
 #include "SDL_stdinc.h"
 
-#if !defined(SDL_setenv) && defined(__WIN32__)
+#if defined(__WIN32__) && (!defined(HAVE_SETENV) || !defined(HAVE_GETENV))
 /* Note this isn't thread-safe! */
 static char *SDL_envmem = NULL; /* Ugh, memory leak */
 static size_t SDL_envmemlen = 0;
 #endif
 
-
 /* Put a variable into the environment */
 #if defined(HAVE_SETENV)
 int

+ 1 - 1
src/stdlib/SDL_string.c

@@ -986,7 +986,7 @@ SDL_vsscanf(const char *text, const char *fmt, va_list ap)
 }
 #else
 int
-SDL_vsscanf(const char *text, const char *fmt, ...)
+SDL_vsscanf(const char *text, const char *fmt, va_list ap)
 {
     int retval = 0;