diff --git a/libretro-common/rthreads/rthreads.c b/libretro-common/rthreads/rthreads.c index 657dc87cd2..fd995187a0 100644 --- a/libretro-common/rthreads/rthreads.c +++ b/libretro-common/rthreads/rthreads.c @@ -765,8 +765,8 @@ bool sthread_tls_delete(sthread_tls_t *tls) #ifdef USE_WIN32_THREADS return TlsFree(*tls) != 0; #else - pthread_key_t key = (pthread_key_t)tls; - return pthread_key_delete(key) == 0; + /* TODO/FIXME - broken for UCRT */ + return pthread_key_delete(*tls) == 0; #endif } @@ -775,8 +775,8 @@ void *sthread_tls_get(sthread_tls_t *tls) #ifdef USE_WIN32_THREADS return TlsGetValue(*tls); #else - pthread_key_t key = (pthread_key_t)tls; - return pthread_getspecific(key); + /* TODO/FIXME - broken for UCRT */ + return pthread_getspecific(*tls); #endif } @@ -785,8 +785,8 @@ bool sthread_tls_set(sthread_tls_t *tls, const void *data) #ifdef USE_WIN32_THREADS return TlsSetValue(*tls, (void*)data) != 0; #else - pthread_key_t key = (pthread_key_t)tls; - return pthread_setspecific(key, data) == 0; + /* TODO/FIXME - broken for UCRT */ + return pthread_setspecific(*tls, data) == 0; #endif } #endif