From ac20ce1924a0eb563acfda6533a80701cd611bfa Mon Sep 17 00:00:00 2001 From: Matt Kraai Date: Fri, 24 Aug 2001 19:51:54 +0000 Subject: Canonicalize dirname(3) behavior. --- libbb/dirname.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'libbb/dirname.c') diff --git a/libbb/dirname.c b/libbb/dirname.c index 5f839945d..87db1f24f 100644 --- a/libbb/dirname.c +++ b/libbb/dirname.c @@ -22,7 +22,8 @@ #include #include "libbb.h" -/* Return a string on the heap containing the directory component of PATH. */ +/* Return a string containing the path name of the parent + * directory of PATH. */ char *dirname(const char *path) { @@ -43,7 +44,8 @@ char *dirname(const char *path) s--; if (s < path) - return xstrdup ("."); - else - return xstrndup (path, s - path + 1); + return "."; + + s[1] = '\0'; + return path; } -- cgit v1.2.3