Fix a POSIX conformance bug. POSIX says sigwait should return error number
in return value not in errno.
This commit is contained in:
parent
fc9687ad3c
commit
12db4373da
@ -178,9 +178,9 @@ __sigwait(const sigset_t *set, int *sig)
|
||||
if (ret > 0) {
|
||||
*sig = ret;
|
||||
ret = 0;
|
||||
} else {
|
||||
ret = errno;
|
||||
}
|
||||
else
|
||||
ret = -1;
|
||||
_thr_cancel_leave(curthread, 1);
|
||||
return (ret);
|
||||
}
|
||||
@ -195,7 +195,7 @@ _sigwait(const sigset_t *set, int *sig)
|
||||
*sig = ret;
|
||||
ret = 0;
|
||||
} else {
|
||||
ret = -1;
|
||||
ret = errno;
|
||||
}
|
||||
return (ret);
|
||||
}
|
||||
|
@ -178,9 +178,9 @@ __sigwait(const sigset_t *set, int *sig)
|
||||
if (ret > 0) {
|
||||
*sig = ret;
|
||||
ret = 0;
|
||||
} else {
|
||||
ret = errno;
|
||||
}
|
||||
else
|
||||
ret = -1;
|
||||
_thr_cancel_leave(curthread, 1);
|
||||
return (ret);
|
||||
}
|
||||
@ -195,7 +195,7 @@ _sigwait(const sigset_t *set, int *sig)
|
||||
*sig = ret;
|
||||
ret = 0;
|
||||
} else {
|
||||
ret = -1;
|
||||
ret = errno;
|
||||
}
|
||||
return (ret);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user