From d1d751e4be38f192cd45370929f68945f015ef00 Mon Sep 17 00:00:00 2001 From: Elliott Hughes Date: Tue, 13 Nov 2018 14:17:33 -0800 Subject: dirname: support multiple arguments. --- tests/dirname.test | 1 + toys/posix/dirname.c | 6 ++++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/tests/dirname.test b/tests/dirname.test index 3ea89197..47b26e03 100755 --- a/tests/dirname.test +++ b/tests/dirname.test @@ -8,3 +8,4 @@ testing "/-only" "dirname ///////" "/\n" "" "" testing "trailing /" "dirname a//////" ".\n" "" "" testing "combined" "dirname /////a///b///c///d/////" "/////a///b///c\n" "" "" testing "/a/" "dirname /////a///" "/\n" "" "" +testing "multiple" "dirname hello/a world/b" "hello\nworld\n" "" "" diff --git a/toys/posix/dirname.c b/toys/posix/dirname.c index 06470ad8..fa84af27 100644 --- a/toys/posix/dirname.c +++ b/toys/posix/dirname.c @@ -10,7 +10,7 @@ config DIRNAME bool "dirname" default y help - usage: dirname PATH + usage: dirname PATH... Show directory portion of path. */ @@ -19,5 +19,7 @@ config DIRNAME void dirname_main(void) { - puts(dirname(*toys.optargs)); + char **arg; + + for (arg = toys.optargs; *arg; ++arg) puts(dirname(*arg)); } -- cgit v1.2.3