diff options
Diffstat (limited to 'winsup/cygwin/path.cc')
-rw-r--r-- | winsup/cygwin/path.cc | 11 |
1 files changed, 3 insertions, 8 deletions
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 |