From 4fa016cbc9907ef9da5272c5dcfa76f8ade216f1 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Tue, 21 Sep 2004 22:01:50 +0000 Subject: Include . (main): Reject unknown options. --- src/dirname.c | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) (limited to 'src/dirname.c') diff --git a/src/dirname.c b/src/dirname.c index 552b6da0d..40a9b29ce 100644 --- a/src/dirname.c +++ b/src/dirname.c @@ -18,6 +18,7 @@ /* Written by David MacKenzie and Jim Meyering. */ #include +#include #include #include @@ -77,27 +78,22 @@ main (int argc, char **argv) parse_long_options (argc, argv, PROGRAM_NAME, GNU_PACKAGE, VERSION, usage, AUTHORS, (char const *) NULL); - /* The above handles --help and --version. - Since there is no other invocation of getopt, handle `--' here. */ - if (argc > 1 && STREQ (argv[1], "--")) - { - --argc; - ++argv; - } + if (getopt (argc, argv, "+") != -1) + usage (EXIT_FAILURE); - if (argc < 2) + if (argc < optind + 1) { error (0, 0, _("missing operand")); usage (EXIT_FAILURE); } - if (2 < argc) + if (optind + 1 < argc) { - error (0, 0, _("extra operand %s"), quote (argv[2])); + error (0, 0, _("extra operand %s"), quote (argv[optind + 1])); usage (EXIT_FAILURE); } - result = argv[1]; + result = argv[optind]; len = dir_len (result); if (! len) -- cgit v1.2.3-54-g00ecf