|
@@ -3,7 +3,7 @@
|
|
int pthread_detach(pthread_t t)
|
|
int pthread_detach(pthread_t t)
|
|
{
|
|
{
|
|
/* Cannot detach a thread that's already exiting */
|
|
/* Cannot detach a thread that's already exiting */
|
|
- if (a_xchg(&t->exitlock, 1))
|
|
|
|
|
|
+ if (a_swap(&t->exitlock, 1))
|
|
return pthread_join(t, 0);
|
|
return pthread_join(t, 0);
|
|
t->detached = 1;
|
|
t->detached = 1;
|
|
t->exitlock = 0;
|
|
t->exitlock = 0;
|