From 93f73fd55b6d10ee912f8a86326660413d8853f6 Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Thu, 17 Feb 2011 09:26:15 -0800 Subject: [PATCH] Our minimum Windows version is Windows 2000, so it's okay to directly call InitializeCriticalSectionAndSpinCount().. --- src/core/windows/SDL_windows.h | 4 ++-- src/thread/windows/SDL_sysmutex.c | 20 ++++---------------- src/video/windows/SDL_windowsmouse.c | 7 ------- 3 files changed, 6 insertions(+), 25 deletions(-) mode change 100644 => 100755 src/core/windows/SDL_windows.h mode change 100644 => 100755 src/thread/windows/SDL_sysmutex.c mode change 100644 => 100755 src/video/windows/SDL_windowsmouse.c diff --git a/src/core/windows/SDL_windows.h b/src/core/windows/SDL_windows.h old mode 100644 new mode 100755 index a7622168e..44513b39f --- a/src/core/windows/SDL_windows.h +++ b/src/core/windows/SDL_windows.h @@ -30,8 +30,8 @@ #ifndef UNICODE #define UNICODE 1 #endif -#undef WINVER -#define WINVER 0x500 /* Need 0x410 for AlphaBlend() and 0x500 for EnumDisplayDevices() */ +#undef _WIN32_WINNT +#define _WIN32_WINNT 0x500 /* Need 0x410 for AlphaBlend() and 0x500 for EnumDisplayDevices() */ #include diff --git a/src/thread/windows/SDL_sysmutex.c b/src/thread/windows/SDL_sysmutex.c old mode 100644 new mode 100755 index fbcb1d3e1..0b00dbf4e --- a/src/thread/windows/SDL_sysmutex.c +++ b/src/thread/windows/SDL_sysmutex.c @@ -38,29 +38,17 @@ SDL_mutex * SDL_CreateMutex(void) { SDL_mutex *mutex; - static DWORD (WINAPI*pf_SetCriticalSectionSpinCount)(LPCRITICAL_SECTION, DWORD) = NULL; - static HMODULE kernel32 = NULL; - - /* One time logic - detect WinNT */ - if(kernel32 == NULL) { - kernel32 = GetModuleHandleA("kernel32.dll"); - if(kernel32) { - /* Attempt to resolve symbol -- Win9x gets NULL */ - pf_SetCriticalSectionSpinCount = (DWORD (WINAPI*)(LPCRITICAL_SECTION, DWORD))GetProcAddress(kernel32, "SetCriticalSectionSpinCount"); - } - else - kernel32 = (HMODULE)0x01; /* don't try to init again */ - } - /* Allocate mutex memory */ mutex = (SDL_mutex *) SDL_malloc(sizeof(*mutex)); if (mutex) { /* Initialize */ +#ifdef _WIN32_WCE InitializeCriticalSection(&mutex->cs); - +#else /* On SMP systems, a non-zero spin count generally helps performance */ - if(pf_SetCriticalSectionSpinCount) pf_SetCriticalSectionSpinCount(&mutex->cs, 2000); + InitializeCriticalSectionAndSpinCount(&mutex->cs, 2000); +#endif } else { SDL_OutOfMemory(); } diff --git a/src/video/windows/SDL_windowsmouse.c b/src/video/windows/SDL_windowsmouse.c old mode 100644 new mode 100755 index 800e32e54..efb243b6b --- a/src/video/windows/SDL_windowsmouse.c +++ b/src/video/windows/SDL_windowsmouse.c @@ -20,13 +20,6 @@ slouken@libsdl.org */ -/* we need to define it, so that raw input is included*/ - -#if (_WIN32_WINNT < 0x0501) -#undef _WIN32_WINNT -#define _WIN32_WINNT 0x0501 -#endif - #include "SDL_config.h" #include "SDL_windowsvideo.h"