4
0
mirror of git://sourceware.org/git/newlib-cygwin.git synced 2025-01-18 20:39:33 +08:00

* syscalls.cc (_isatty): Define as an alias to isatty to override newlib

version.
* thread.cc (pthread_kill): Deal with signal 0 as per POSIX and also avoid
manipulating an invalid thread.
This commit is contained in:
Christopher Faylor 2008-02-13 17:21:05 +00:00
parent a9414ca6d8
commit b40597cb2e
3 changed files with 27 additions and 2 deletions

View File

@ -1,3 +1,11 @@
2008-02-13 Christopher Faylor <me+cygwin@cgf.cx>
* syscalls.cc (_isatty): Define as an alias to isatty to override
newlib version.
* thread.cc (pthread_kill): Deal with signal 0 as per POSIX and also
avoid manipulating an invalid thread.
2008-02-13 Corinna Vinschen <corinna@vinschen.de>
* posix.sgml: Move llrint, llrintf, llrintl, lrintl, rintl, wcstol,

View File

@ -999,6 +999,7 @@ isatty (int fd)
syscall_printf ("%d = isatty (%d)", res, fd);
return res;
}
EXPORT_ALIAS (isatty, _isatty)
/* Under NT, try to make a hard link using backup API. If that
fails or we are Win 95, just copy the file.

View File

@ -2640,8 +2640,24 @@ pthread_kill (pthread_t thread, int sig)
si.si_code = SI_USER;
si.si_pid = myself->pid;
si.si_uid = myself->uid;
thread->cygtls->set_threadkill ();
int rval = sig ? sig_send (NULL, si, thread->cygtls) : 0;
int rval;
if (!thread->valid)
rval = ESRCH;
else if (sig)
{
thread->cygtls->set_threadkill ();
rval = sig_send (NULL, si, thread->cygtls);
}
else
switch (WaitForSingleObject (thread->win32_obj_id, 0))
{
case WAIT_TIMEOUT:
rval = 0;
break;
default:
rval = ESRCH;
break;
}
// unlock myself
return rval;