diff --git a/src/thread/pthread_cancel.c b/src/thread/pthread_cancel.c index 1ff00ad3016e43a685c3e9a196f85cdb3701b739..c497dbe667d101054158d1399854f2da8469a5cc 100644 --- a/src/thread/pthread_cancel.c +++ b/src/thread/pthread_cancel.c @@ -2,6 +2,6 @@ int pthread_cancel(pthread_t t) { - t->cancel = 1; + a_store(&t->cancel, 1); return pthread_kill(t, SIGCANCEL); }