diff options
author | alfred <alfred@FreeBSD.org> | 2003-01-10 23:13:16 +0000 |
---|---|---|
committer | alfred <alfred@FreeBSD.org> | 2003-01-10 23:13:16 +0000 |
commit | e540e35a2c49db9fab0d34d582f8af61c3456e92 (patch) | |
tree | 5210d8ecba4ae6db9d421e06d903d97e4d83702c | |
parent | 5fc7b42391b1760e39dbb4ef6b4f8d05ffc346a4 (diff) | |
download | FreeBSD-src-e540e35a2c49db9fab0d34d582f8af61c3456e92.zip FreeBSD-src-e540e35a2c49db9fab0d34d582f8af61c3456e92.tar.gz |
make sem_leave return a usable errno instead of -1.
make ksem_close return that usable errno instead of -1 (ERESTART).
PR: 46957
-rw-r--r-- | sys/kern/uipc_sem.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/kern/uipc_sem.c b/sys/kern/uipc_sem.c index fa0d91a..e3912e1 100644 --- a/sys/kern/uipc_sem.c +++ b/sys/kern/uipc_sem.c @@ -494,7 +494,7 @@ sem_leave(p, ks) DP(("sem_leave: returning\n")); return (0); } - return (-1); + return (EINVAL); } static void @@ -590,9 +590,9 @@ kern_sem_close(td, id) ks = ID_TO_SEM(id); /* this is not a valid operation for unnamed sems */ if (ks != NULL && ks->ks_name != NULL) - error = sem_leave(td->td_proc, ks) == 0 ? 0 : EINVAL; + error = sem_leave(td->td_proc, ks); mtx_unlock(&sem_lock); - return (-1); + return (error); } #ifndef _SYS_SYSPROTO_H_ |