summaryrefslogtreecommitdiffstats
path: root/src/sem.c
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2022-09-01 23:14:03 -0400
committerDavid Robillard <d@drobilla.net>2022-09-01 23:59:38 -0400
commit7cd6a5437c263a4e2b64bafdf780d60ce51f941f (patch)
treea87d20b772ddc0e864cc2768a999af2d8f92cf13 /src/sem.c
parent16a8597f4d52de948291825698b7d2458998a510 (diff)
downloadzix-7cd6a5437c263a4e2b64bafdf780d60ce51f941f.tar.gz
zix-7cd6a5437c263a4e2b64bafdf780d60ce51f941f.tar.bz2
zix-7cd6a5437c263a4e2b64bafdf780d60ce51f941f.zip
Simplify thread and semaphore status codes
Diffstat (limited to 'src/sem.c')
-rw-r--r--src/sem.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/src/sem.c b/src/sem.c
index a577b08..325eaa4 100644
--- a/src/sem.c
+++ b/src/sem.c
@@ -61,7 +61,7 @@ zix_sem_try_wait(ZixSem* sem)
const kern_return_t r = semaphore_timedwait(sem->sem, zero);
return (r == KERN_SUCCESS) ? ZIX_STATUS_SUCCESS
- : (r == KERN_OPERATION_TIMED_OUT) ? ZIX_STATUS_TIMEOUT
+ : (r == KERN_OPERATION_TIMED_OUT) ? ZIX_STATUS_UNAVAILABLE
: ZIX_STATUS_ERROR;
}
@@ -114,7 +114,7 @@ zix_sem_try_wait(ZixSem* sem)
const DWORD r = WaitForSingleObject(sem->sem, 0);
return (r == WAIT_OBJECT_0) ? ZIX_STATUS_SUCCESS
- : (r == WAIT_TIMEOUT) ? ZIX_STATUS_TIMEOUT
+ : (r == WAIT_TIMEOUT) ? ZIX_STATUS_UNAVAILABLE
: ZIX_STATUS_ERROR;
}
@@ -171,8 +171,7 @@ zix_sem_try_wait(ZixSem* sem)
// Interrupted, try again
}
- return r ? (errno == EAGAIN ? ZIX_STATUS_TIMEOUT : zix_errno_status(errno))
- : ZIX_STATUS_SUCCESS;
+ return r ? zix_errno_status(errno) : ZIX_STATUS_SUCCESS;
}
ZixStatus