[PATCH v2 2/3] Cygwin: path_conv::check: handle error from fhandler_process::exists

Corinna Vinschen corinna-cygwin@cygwin.com
Tue Sep 8 19:15:41 GMT 2020


On Sep  8 15:05, Ken Brown via Cygwin-patches wrote:
> On 9/8/2020 3:02 PM, Ken Brown via Cygwin-patches wrote:
> > 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.
> > ---
> >   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)
> > 
> 
> The subject should say "2/2", not "2/3".  I have a local third patch
> documenting the bug fix, which I didn't bother to send.

ACk to both patches, 2 and 3 ;)


Corinna


More information about the Cygwin-patches mailing list