Fix sigwait and pthread_kill return values in case of error
* signal.cc (sigwait): Fix return value to reflect errno in case of error according to POSIX. Never return EINTR. * thread.cc (pthread_kill): Return errno if sig_send failed. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
This commit is contained in:
@ -3056,7 +3056,11 @@ pthread_kill (pthread_t thread, int sig)
|
||||
if (!thread->valid)
|
||||
rval = ESRCH;
|
||||
else if (sig)
|
||||
rval = sig_send (NULL, si, thread->cygtls);
|
||||
{
|
||||
rval = sig_send (NULL, si, thread->cygtls);
|
||||
if (rval == -1)
|
||||
rval = get_errno ();
|
||||
}
|
||||
else
|
||||
switch (WaitForSingleObject (thread->win32_obj_id, 0))
|
||||
{
|
||||
|
Reference in New Issue
Block a user