[newlib-cygwin] Cygwin: path_conv::check: handle error from fhandler_process::exists
Ken Brown
kbrown@sourceware.org
Tue Sep 8 19:17:45 GMT 2020
https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=6775ac8cb5adf6c945c5d09d957f21d2ca673aba
commit 6775ac8cb5adf6c945c5d09d957f21d2ca673aba
Author: Ken Brown <kbrown@cornell.edu>
Date: Tue Sep 8 12:23:32 2020 -0400
Cygwin: path_conv::check: handle error from fhandler_process::exists
fhandler_process::exists is called when we are checking a path
starting with "/proc/<pid>/fd". If it returns virt_none and sets an
errno, there is no need for further checking. Just set 'error' and
return.
Diff:
---
winsup/cygwin/path.cc | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/winsup/cygwin/path.cc b/winsup/cygwin/path.cc
index 95faf8ca7..1d0c38a20 100644
--- a/winsup/cygwin/path.cc
+++ b/winsup/cygwin/path.cc
@@ -809,6 +809,15 @@ path_conv::check (const char *src, unsigned opt,
delete fh;
goto retry_fs_via_processfd;
}
+ else if (file_type == virt_none && dev == FH_PROCESSFD)
+ {
+ error = get_errno ();
+ if (error)
+ {
+ delete fh;
+ return;
+ }
+ }
delete fh;
}
switch (file_type)
More information about the Cygwin-cvs
mailing list