OSDN Git Service

* path.cc (path_conv::check): Tighten FH_CYGDRIVE check to avoid matching
authorcgf <cgf>
Sat, 24 Nov 2001 21:04:59 +0000 (21:04 +0000)
committercgf <cgf>
Sat, 24 Nov 2001 21:04:59 +0000 (21:04 +0000)
trailing component, like other devices.

winsup/cygwin/ChangeLog
winsup/cygwin/path.cc

index 72bbbda..9c44cb2 100644 (file)
@@ -1,5 +1,10 @@
 2001-11-24  Christopher Faylor  <cgf@redhat.com>
 
+       * path.cc (path_conv::check): Tighten FH_CYGDRIVE check to avoid
+       matching trailing component, like other devices.
+
+2001-11-24  Christopher Faylor  <cgf@redhat.com>
+
        * autoload.cc (IsDebuggerPresent): Make conditional load since it is
        not available everywhere.
 
index 8e1775c..af30927 100644 (file)
@@ -482,19 +482,16 @@ path_conv::check (const char *src, unsigned opt,
          /* devn should not be a device.  If it is, then stop parsing now. */
          if (devn != FH_BAD)
            {
-             if (devn == FH_CYGDRIVE)
-               fileattr = !unit ? FILE_ATTRIBUTE_DIRECTORY
-                                : GetFileAttributes (full_path);
-             else
+             if (component)
                {
-                 if (component)
-                   {
-                     error = ENOTDIR;
-                     return;
-                   }
-                 fileattr = 0;
+                 error = ENOTDIR;
+                 return;
                }
-
+             if (devn != FH_CYGDRIVE)
+               fileattr = 0;
+             else
+               fileattr = !unit ? FILE_ATTRIBUTE_DIRECTORY
+                                : GetFileAttributes (full_path);
              goto out;         /* Found a device.  Stop parsing. */
            }