72 #if defined(__WIN32__) && !defined(HAVE_LIBC)
93 #define SDL_PASSED_BEGINTHREAD_ENDTHREAD
96 typedef uintptr_t(__cdecl * pfnSDL_CurrentBeginThread)
97 (
void *, unsigned, unsigned (__stdcall *
func)(
void *),
98 void * ,
unsigned,
unsigned * );
99 typedef void (__cdecl * pfnSDL_CurrentEndThread) (
unsigned code);
106 pfnSDL_CurrentBeginThread pfnBeginThread,
107 pfnSDL_CurrentEndThread pfnEndThread);
112 pfnSDL_CurrentBeginThread pfnBeginThread,
113 pfnSDL_CurrentEndThread pfnEndThread);
119 #if defined(SDL_CreateThread) && SDL_DYNAMIC_API
120 #undef SDL_CreateThread
121 #define SDL_CreateThread(fn, name, data) SDL_CreateThread_REAL(fn, name, data, (pfnSDL_CurrentBeginThread)_beginthreadex, (pfnSDL_CurrentEndThread)_endthreadex)
122 #undef SDL_CreateThreadWithStackSize
123 #define SDL_CreateThreadWithStackSize(fn, name, stacksize, data) SDL_CreateThreadWithStackSize_REAL(fn, name, stacksize, data, (pfnSDL_CurrentBeginThread)_beginthreadex, (pfnSDL_CurrentEndThread)_endthreadex)
125 #define SDL_CreateThread(fn, name, data) SDL_CreateThread(fn, name, data, (pfnSDL_CurrentBeginThread)_beginthreadex, (pfnSDL_CurrentEndThread)_endthreadex)
126 #define SDL_CreateThreadWithStackSize(fn, name, stacksize, data) SDL_CreateThreadWithStackSize(fn, name, data, (pfnSDL_CurrentBeginThread)_beginthreadex, (pfnSDL_CurrentEndThread)_endthreadex)
129 #elif defined(__OS2__)
134 #define SDL_PASSED_BEGINTHREAD_ENDTHREAD
140 typedef int (*pfnSDL_CurrentBeginThread)(
void (*
func)(
void *),
void *,
unsigned,
void * );
141 typedef void (*pfnSDL_CurrentEndThread)(
void);
144 pfnSDL_CurrentBeginThread pfnBeginThread,
145 pfnSDL_CurrentEndThread pfnEndThread);
148 pfnSDL_CurrentBeginThread pfnBeginThread,
149 pfnSDL_CurrentEndThread pfnEndThread);
150 #if defined(SDL_CreateThread) && SDL_DYNAMIC_API
151 #undef SDL_CreateThread
152 #define SDL_CreateThread(fn, name, data) SDL_CreateThread_REAL(fn, name, data, (pfnSDL_CurrentBeginThread)_beginthread, (pfnSDL_CurrentEndThread)_endthread)
153 #undef SDL_CreateThreadWithStackSize
154 #define SDL_CreateThreadWithStackSize(fn, name, stacksize, data) SDL_CreateThreadWithStackSize_REAL(fn, name, data, (pfnSDL_CurrentBeginThread)_beginthread, (pfnSDL_CurrentEndThread)_endthread)
156 #define SDL_CreateThread(fn, name, data) SDL_CreateThread(fn, name, data, (pfnSDL_CurrentBeginThread)_beginthread, (pfnSDL_CurrentEndThread)_endthread)
157 #define SDL_CreateThreadWithStackSize(fn, name, stacksize, data) SDL_CreateThreadWithStackSize(fn, name, stacksize, data, (pfnSDL_CurrentBeginThread)_beginthread, (pfnSDL_CurrentEndThread)_endthread)