diff options
Diffstat (limited to 'winsup/cygwin/dtable.cc')
-rw-r--r-- | winsup/cygwin/dtable.cc | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/winsup/cygwin/dtable.cc b/winsup/cygwin/dtable.cc index 532910410..c9f0cde7e 100644 --- a/winsup/cygwin/dtable.cc +++ b/winsup/cygwin/dtable.cc @@ -557,13 +557,18 @@ fhandler_fifo * dtable::find_fifo (const char *path) { lock (); + fhandler_fifo *fh_res = NULL; for (unsigned i = 0; i < size; i++) { fhandler_base *fh = fds[i]; if (fh && fh->isfifo () && strcmp (path, fh->get_win32_name ()) == 0) - return (fhandler_fifo *) fh; + { + fh_res = (fhandler_fifo *) fh; + break; + } } - return NULL; + unlock (); + return fh_res; } select_record * |