svn commit: r188279 - in stable/7/usr.bin: basename dirname
Robert Watson
rwatson at FreeBSD.org
Sat Feb 7 03:27:36 PST 2009
Author: rwatson
Date: Sat Feb 7 11:27:35 2009
New Revision: 188279
URL: http://svn.freebsd.org/changeset/base/188279
Log:
Merge r188006 from head to stable/7:
Alow dirname(1) to accept multiple arguments in the same way that
basename(1) does.
(Two different PRs contained identical patches, both cited below)
PR: 121520, 86148
Submitted by: Ighighi <ighighi at gmail dot com>
Submitted by: Leif Neland <leif at neland dot dk>
Modified:
stable/7/usr.bin/basename/ (props changed)
stable/7/usr.bin/basename/basename.1
stable/7/usr.bin/dirname/ (props changed)
stable/7/usr.bin/dirname/dirname.c
Modified: stable/7/usr.bin/basename/basename.1
==============================================================================
--- stable/7/usr.bin/basename/basename.1 Sat Feb 7 11:15:53 2009 (r188278)
+++ stable/7/usr.bin/basename/basename.1 Sat Feb 7 11:27:35 2009 (r188279)
@@ -52,6 +52,7 @@
.Op Ar ...
.Nm dirname
.Ar string
+.Op Ar ...
.Sh DESCRIPTION
The
.Nm
Modified: stable/7/usr.bin/dirname/dirname.c
==============================================================================
--- stable/7/usr.bin/dirname/dirname.c Sat Feb 7 11:15:53 2009 (r188278)
+++ stable/7/usr.bin/dirname/dirname.c Sat Feb 7 11:27:35 2009 (r188279)
@@ -66,12 +66,15 @@ main(int argc, char **argv)
argc -= optind;
argv += optind;
- if (argc != 1)
+ if (argc < 1)
usage();
- if ((p = dirname(*argv)) == NULL)
- err(1, "%s", *argv);
- (void)printf("%s\n", p);
+ while (argc--) {
+ if ((p = dirname(*argv)) == NULL)
+ err(1, "%s", *argv);
+ argv++;
+ (void)printf("%s\n", p);
+ }
exit(0);
}
@@ -79,6 +82,6 @@ void
usage(void)
{
- (void)fprintf(stderr, "usage: dirname string\n");
+ (void)fprintf(stderr, "usage: dirname string [...]\n");
exit(1);
}
More information about the svn-src-stable-7
mailing list