From 69a6b2d4aef2028a963751a2105d55a305d046ba Mon Sep 17 00:00:00 2001
From: Eric Andersen <andersen@codepoet.org>
Date: Tue, 12 Dec 2000 23:13:54 +0000
Subject: [PATCH] Fix from Matt Kraai so basename / will work as expected.

---
 utility.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/utility.c b/utility.c
index 879677726..0e170d1c1 100644
--- a/utility.c
+++ b/utility.c
@@ -1731,14 +1731,16 @@ char *get_last_path_component(char *path)
 	char *s=path+strlen(path)-1;
 
 	/* strip trailing slashes */
-	while (s && *s == '/') {
+	while (s != path && *s == '/') {
 		*s-- = '\0';
 	}
 
 	/* find last component */
 	s = strrchr(path, '/');
-	if (s==NULL) return path;
-	else return s+1;
+	if (s == NULL || s[1] == '\0')
+		return path;
+	else
+		return s+1;
 }
 #endif