From 0bc08c8bfddc8910387368d44e8ae3124e2963f1 Mon Sep 17 00:00:00 2001
From: Tryn Mirell <tryn@mirell.org>
Date: Sun, 15 Jan 2012 23:27:22 -0600
Subject: 'basename': Handle where we have no / passed

---
 toys/basename.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/toys/basename.c b/toys/basename.c
index 33307327..db70a5ec 100644
--- a/toys/basename.c
+++ b/toys/basename.c
@@ -26,7 +26,7 @@ void basename_main(void)
     if (!arg) return; 
 
     arglen = strlen(arg);
-    
+ 
     // handle the case where we only have single slash
     if (arglen == 1 && arg[0] == '/') {
         puts("/");
@@ -39,7 +39,10 @@ void basename_main(void)
     }
 
     // get everything past the last /
-    base = strrchr(arg, '/') + 1;
+    base = strrchr(arg, '/');
+
+    if (!base) base = arg;
+    else base++;
    
     // handle the case where we have all slashes
     if (base[0] == 0) base = "/";  
-- 
cgit v1.2.3