diff options
Diffstat (limited to 'winsup/cygwin/dtable.cc')
-rw-r--r-- | winsup/cygwin/dtable.cc | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/winsup/cygwin/dtable.cc b/winsup/cygwin/dtable.cc index 15f4c0ce7..498e7fd8d 100644 --- a/winsup/cygwin/dtable.cc +++ b/winsup/cygwin/dtable.cc @@ -256,6 +256,8 @@ cygwin_attach_handle_to_fd (char *name, int fd, HANDLE handle, mode_t bin, if (fd == -1) fd = cygheap->fdtab.find_unused_handle (); fhandler_base *fh = build_fh_name (name); + if (!fh) + return -1; cygheap->fdtab[fd] = fh; cygheap->fdtab[fd]->refcnt (1); fh->init (handle, myaccess, bin ?: fh->pc_binmode ()); @@ -337,6 +339,9 @@ dtable::init_std_file_from_handle (int fd, HANDLE handle) else fh = build_fh_name (name); + if (!fh) + return; + if (name[0]) { bin = fh->pc_binmode (); |