aboutsummaryrefslogtreecommitdiff
path: root/toys/basename.c
diff options
context:
space:
mode:
Diffstat (limited to 'toys/basename.c')
-rw-r--r--toys/basename.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/toys/basename.c b/toys/basename.c
index a6a3bb96..9f228b41 100644
--- a/toys/basename.c
+++ b/toys/basename.c
@@ -37,10 +37,8 @@ void basename_main(void)
// chop off the suffix if provided
if (suffix) {
- int suflen = strlen(suffix);
- int reslen = strlen(base);
- if (suflen < reslen && !strcmp( base+reslen-suflen, suffix))
- base[reslen-suflen] = 0;
+ arg = base + strlen(base) - strlen(suffix);
+ if (arg > base && !strcmp(arg, suffix)) *arg = 0;
}
puts(base);