42 if (pthread_key_create(&tls->posix.key,
NULL) != 0)
45 "POSIX: Failed to create context TLS");
55 if (tls->posix.allocated)
56 pthread_key_delete(tls->posix.key);
62 assert(tls->posix.allocated ==
GLFW_TRUE);
63 return pthread_getspecific(tls->posix.key);
68 assert(tls->posix.allocated ==
GLFW_TRUE);
69 pthread_setspecific(tls->posix.key, value);
76 if (pthread_mutex_init(&mutex->posix.handle,
NULL) != 0)
82 return mutex->posix.allocated =
GLFW_TRUE;
87 if (mutex->posix.allocated)
88 pthread_mutex_destroy(&mutex->posix.handle);
94 assert(mutex->posix.allocated ==
GLFW_TRUE);
95 pthread_mutex_lock(&mutex->posix.handle);
100 assert(mutex->posix.allocated ==
GLFW_TRUE);
101 pthread_mutex_unlock(&mutex->posix.handle);