summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/thread/__timedwait.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/thread/__timedwait.c b/src/thread/__timedwait.c
index c9ec70cf..9b882b5a 100644
--- a/src/thread/__timedwait.c
+++ b/src/thread/__timedwait.c
@@ -33,7 +33,7 @@ int __timedwait(volatile int *addr, int val,
r = -__syscall_cp(SYS_futex, addr, FUTEX_WAIT|priv, val, top);
if (r == ENOSYS) r = -__syscall_cp(SYS_futex, addr, FUTEX_WAIT, val, top);
- if (r != EINTR && r != ETIMEDOUT) r = 0;
+ if (r != EINTR && r != ETIMEDOUT && r != ECANCELED) r = 0;
pthread_cleanup_pop(0);
if (!cleanup) __pthread_setcancelstate(cs, 0);