diff options
Diffstat (limited to 'src/thread/pthread_cancel.c')
-rw-r--r-- | src/thread/pthread_cancel.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/thread/pthread_cancel.c b/src/thread/pthread_cancel.c index e3d291ee..f17ce882 100644 --- a/src/thread/pthread_cancel.c +++ b/src/thread/pthread_cancel.c @@ -42,6 +42,7 @@ static void cancel_handler(int sig, siginfo_t *si, void *ctx) const char *ip = ((char **)&uc->uc_mcontext)[CANCEL_REG_IP]; extern const char __cp_begin[1], __cp_end[1]; + a_barrier(); if (!self->cancel || self->canceldisable) return; _sigaddset(&uc->uc_sigmask, SIGCANCEL); |