From 09f1b5f9407c5c812dd8477ff6ac6ce01681be11 Mon Sep 17 00:00:00 2001 From: Jim Meyering Date: Sat, 22 Jan 2000 21:29:02 +0000 Subject: (dir_name): Support for DOS-style file names with drive letters. --- lib/dirname.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'lib') diff --git a/lib/dirname.c b/lib/dirname.c index 483c33867..cf62de7a0 100644 --- a/lib/dirname.c +++ b/lib/dirname.c @@ -57,8 +57,17 @@ dir_name (const char *path) else { /* Remove any trailing slashes from the result. */ +#ifdef MSDOS + char *lim = (path[0] >= 'A' && path[0] <= 'z' && path[1] == ':') + ? path + 2 : path; + + /* If canonicalized "d:/path", leave alone the root case "d:/". */ + while (slash > lim && *slash == '/') + --slash; +#else while (slash > path && *slash == '/') --slash; +#endif length = slash - path + 1; } -- cgit v1.2.3-70-g09d2