diff options
author | Christopher Faylor <me@cgf.cx> | 2001-10-31 00:55:32 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2001-10-31 00:55:32 +0000 |
commit | 6ea0c04e7ca613dbf28b5f913fe2d6f84ee7cbfc (patch) | |
tree | c5ade0236415b305758f548b1b61990e4ba36ca9 /winsup/cygwin/syscalls.cc | |
parent | 39374014e7f1a260ee6f20f6724e67ebb75fb172 (diff) | |
download | cygnal-6ea0c04e7ca613dbf28b5f913fe2d6f84ee7cbfc.tar.gz cygnal-6ea0c04e7ca613dbf28b5f913fe2d6f84ee7cbfc.tar.bz2 cygnal-6ea0c04e7ca613dbf28b5f913fe2d6f84ee7cbfc.zip |
* cygheap.h (cygheap_fdmanip::cygheap_fdmanip): Clear fh.
(cygheap_fdmanip::isopen): New method.
* syscalls.cc (_read): Avoid accessing closed fd.
* path.h (fe_types): New enum.
(path_conv::set_path): New method.
(find_exec): Change null_if_not_found argument to something more generic.
* spawn.cc (find_exec): Default to returning the POSIX path rather than the
windows path, unless instructed otherwise.
(spawn_guts): Force call to find_exec to use native paths.
* dlfcn.cc (check_path_access): Accommodate new find_exec arguments.
* environ.h (win_env::get_posix): New method.
Diffstat (limited to 'winsup/cygwin/syscalls.cc')
-rw-r--r-- | winsup/cygwin/syscalls.cc | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/winsup/cygwin/syscalls.cc b/winsup/cygwin/syscalls.cc index 637ecaf90..57eb51cd2 100644 --- a/winsup/cygwin/syscalls.cc +++ b/winsup/cygwin/syscalls.cc @@ -322,6 +322,9 @@ _read (int fd, void *ptr, size_t len) goto out; } + if (!cfd.isopen()) + return -1; + /* Check to see if this is a background read from a "tty", sending a SIGTTIN, if appropriate */ res = cfd->bg_check (SIGTTIN); |