diff --git a/ChangeLog b/ChangeLog index ba37bfd1a6..c072148bb6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +Thu Feb 20 18:44:51 2003 Nobuyoshi Nakada + + * file.c (file_expand_path): fix wrong behavior for root file. + expand_path("..", "//machine/share") => "//machine/share" + expand_path("..", "c:/a") => "c:/" + expand_path("..", "/a") => "/" + Thu Feb 20 18:11:01 2003 Nobuyoshi Nakada * file.c (file_expand_path): should not upward beyond share name. diff --git a/file.c b/file.c index 3578b17a1e..407a76d8ac 100644 --- a/file.c +++ b/file.c @@ -1434,7 +1434,7 @@ nextdirsep(s) return (char *)s; } - +#if defined(DOSISH_UNC) || defined(DOSISH_DRIVE_LETTER) static inline char * skipprefix(path) const char *path; @@ -1450,9 +1450,11 @@ skipprefix(path) if (has_drive_letter(path)) return (char *)(path + 2); #endif - while (isdirsep(*path)) path++; return (char *)path; } +#else +#define skipprefix(path) (path) +#endif static char * strrdirsep(path)