Fixed running SDL on older versions of Mac OS X. pthread_setname_np() was introduced in 10.6.
This commit is contained in:
parent
31f2a3ab03
commit
84f8b46a46
1 changed files with 7 additions and 1 deletions
|
@ -33,8 +33,11 @@
|
||||||
#include <sys/resource.h>
|
#include <sys/resource.h>
|
||||||
#include <sys/syscall.h>
|
#include <sys/syscall.h>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
|
|
||||||
|
#if HAVE_PTHREAD_SETNAME_NP
|
||||||
extern int pthread_setname_np (pthread_t __target_thread, __const char *__name) __THROW __nonnull ((2));
|
extern int pthread_setname_np (pthread_t __target_thread, __const char *__name) __THROW __nonnull ((2));
|
||||||
#endif
|
#endif
|
||||||
|
#endif // __LINUX__
|
||||||
|
|
||||||
#include "SDL_platform.h"
|
#include "SDL_platform.h"
|
||||||
#include "SDL_thread.h"
|
#include "SDL_thread.h"
|
||||||
|
@ -91,7 +94,10 @@ SDL_SYS_SetupThread(const char *name)
|
||||||
if (name != NULL) {
|
if (name != NULL) {
|
||||||
#if ( (__MACOSX__ && (MAC_OS_X_VERSION_MAX_ALLOWED >= 1060)) || \
|
#if ( (__MACOSX__ && (MAC_OS_X_VERSION_MAX_ALLOWED >= 1060)) || \
|
||||||
(__IPHONEOS__ && (__IPHONE_OS_VERSION_MAX_ALLOWED >= 30200)) )
|
(__IPHONEOS__ && (__IPHONE_OS_VERSION_MAX_ALLOWED >= 30200)) )
|
||||||
if (pthread_setname_np != NULL) { pthread_setname_np(name); }
|
int (*dynamic_pthread_setname_np)(const char*);
|
||||||
|
*reinterpret_cast<void**>(&dynamic_pthread_setname_np) = dlsym(RTLD_DEFAULT, "pthread_setname_np");
|
||||||
|
if ( dynamic_pthread_setname_np )
|
||||||
|
dynamic_pthread_setname_np( name );
|
||||||
#elif HAVE_PTHREAD_SETNAME_NP
|
#elif HAVE_PTHREAD_SETNAME_NP
|
||||||
pthread_setname_np(pthread_self(), name);
|
pthread_setname_np(pthread_self(), name);
|
||||||
#elif HAVE_PTHREAD_SET_NAME_NP
|
#elif HAVE_PTHREAD_SET_NAME_NP
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue