X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;ds=sidebyside;f=src%2Fthread%2Fsem_timedwait.c;h=e6c2495af75aaf2205b07068d0eea6ee43e8511b;hb=5fcebcde6aeba6ae4a339790beba5331fbcd3b6e;hp=e660436422de56957631f3feb2bee39a73b19690;hpb=6fc5fdbdc70dd17ea8e681a361fb4dae541ee953;p=musl diff --git a/src/thread/sem_timedwait.c b/src/thread/sem_timedwait.c index e6604364..e6c2495a 100644 --- a/src/thread/sem_timedwait.c +++ b/src/thread/sem_timedwait.c @@ -7,7 +7,7 @@ int sem_timedwait(sem_t *sem, const struct timespec *at) for (;;) { if (a_fetch_add(sem->__val, -1) > 0) return 0; - val = a_fetch_add(sem->__val, 1); + val = a_fetch_add(sem->__val, 1)+1; CANCELPT_BEGIN; if (val <= 0 && __timedwait(sem->__val, val, CLOCK_REALTIME, at, 0) == ETIMEDOUT) { errno = ETIMEDOUT;