diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index f65841b54..62e112b27 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,7 @@ +2004-12-20 Christopher Faylor + + * path.cc (normalize_win32_path): Remove unneeded check for dots. + 2004-12-20 Christopher Faylor * path.cc (normalize_posix_path): Remove unneeded check for dots. diff --git a/winsup/cygwin/path.cc b/winsup/cygwin/path.cc index f1c25c4c8..87f3c7a02 100644 --- a/winsup/cygwin/path.cc +++ b/winsup/cygwin/path.cc @@ -1010,7 +1010,9 @@ normalize_win32_path (const char *src, char *dst, char *&tail) /* dst must be greater than dst_start */ && tail[-1] == '\\') { - if (isdirsep (src[2]) || src[2] == 0) + if (!isdirsep (src[2]) && src[2] != '\0') + *tail++ = *src++; + else { /* Back up over /, but not if it's the first one. */ if (tail > dst + 1) @@ -1022,13 +1024,6 @@ normalize_win32_path (const char *src, char *dst, char *&tail) if (isdirsep (*src)) src++; } - else - { - int n = strspn (src, "."); - if (!src[n] || isdirsep (src[n])) /* just dots... */ - return ENOENT; - *tail++ = *src++; - } } /* Otherwise, add char to result. */ else