diff options
-rw-r--r-- | src/bin/initdb/initdb.c | 7 | ||||
-rw-r--r-- | src/bin/scripts/clusterdb.c | 26 | ||||
-rw-r--r-- | src/bin/scripts/createlang.c | 14 | ||||
-rw-r--r-- | src/bin/scripts/droplang.c | 14 | ||||
-rw-r--r-- | src/bin/scripts/reindexdb.c | 25 | ||||
-rw-r--r-- | src/bin/scripts/vacuumdb.c | 27 |
6 files changed, 38 insertions, 75 deletions
diff --git a/src/bin/initdb/initdb.c b/src/bin/initdb/initdb.c index 09d505f2f78..018cfdc1506 100644 --- a/src/bin/initdb/initdb.c +++ b/src/bin/initdb/initdb.c @@ -2644,11 +2644,8 @@ main(int argc, char *argv[]) } - /* - * Non-option argument specifies data directory - * as long as it wasn't already specified with -D / --pgdata - */ - if (optind < argc && strlen(pg_data) == 0) + /* Non-option argument specifies data directory */ + if (optind < argc) { pg_data = xstrdup(argv[optind]); optind++; diff --git a/src/bin/scripts/clusterdb.c b/src/bin/scripts/clusterdb.c index 624886e5c9e..f4c317ae149 100644 --- a/src/bin/scripts/clusterdb.c +++ b/src/bin/scripts/clusterdb.c @@ -106,22 +106,18 @@ main(int argc, char *argv[]) } } - /* - * Non-option argument specifies database name - * as long as it wasn't already specified with -d / --dbname - */ - if (optind < argc && dbname == NULL) + switch (argc - optind) { - dbname = argv[optind]; - optind++; - } - - if (optind < argc) - { - fprintf(stderr, _("%s: too many command-line arguments (first is \"%s\")\n"), - progname, argv[optind + 1]); - fprintf(stderr, _("Try \"%s --help\" for more information.\n"), progname); - exit(1); + case 0: + break; + case 1: + dbname = argv[optind]; + break; + default: + fprintf(stderr, _("%s: too many command-line arguments (first is \"%s\")\n"), + progname, argv[optind + 1]); + fprintf(stderr, _("Try \"%s --help\" for more information.\n"), progname); + exit(1); } setup_cancel_handler(); diff --git a/src/bin/scripts/createlang.c b/src/bin/scripts/createlang.c index a98fad5918e..c2153db630e 100644 --- a/src/bin/scripts/createlang.c +++ b/src/bin/scripts/createlang.c @@ -91,24 +91,14 @@ main(int argc, char *argv[]) } } - /* - * We set dbname from positional arguments if it is not - * already set by option arguments -d. If not doing - * listlangs, positional dbname must follow positional - * langname. - */ - if (argc - optind > 0) { if (listlangs) - { - if (dbname == NULL) - dbname = argv[optind++]; - } + dbname = argv[optind++]; else { langname = argv[optind++]; - if (argc - optind > 0 && dbname == NULL) + if (argc - optind > 0) dbname = argv[optind++]; } } diff --git a/src/bin/scripts/droplang.c b/src/bin/scripts/droplang.c index 22237dff4a1..7fadee0d513 100644 --- a/src/bin/scripts/droplang.c +++ b/src/bin/scripts/droplang.c @@ -90,24 +90,14 @@ main(int argc, char *argv[]) } } - /* - * We set dbname from positional arguments if it is not - * already set by option arguments -d. If not doing - * listlangs, positional dbname must follow positional - * langname. - */ - if (argc - optind > 0) { if (listlangs) - { - if (dbname == NULL) - dbname = argv[optind++]; - } + dbname = argv[optind++]; else { langname = argv[optind++]; - if (argc - optind > 0 && dbname == NULL) + if (argc - optind > 0) dbname = argv[optind++]; } } diff --git a/src/bin/scripts/reindexdb.c b/src/bin/scripts/reindexdb.c index f9272fecc39..53fff01a74b 100644 --- a/src/bin/scripts/reindexdb.c +++ b/src/bin/scripts/reindexdb.c @@ -116,22 +116,17 @@ main(int argc, char *argv[]) } } - /* - * Non-option argument specifies database name - * as long as it wasn't already specified with -d / --dbname - */ - if (optind < argc && dbname == NULL) + switch (argc - optind) { - dbname = argv[optind]; - optind++; - } - - if (optind < argc) - { - fprintf(stderr, _("%s: too many command-line arguments (first is \"%s\")\n"), - progname, argv[optind + 1]); - fprintf(stderr, _("Try \"%s --help\" for more information.\n"), progname); - exit(1); + case 0: + break; + case 1: + dbname = argv[optind]; + break; + default: + fprintf(stderr, _("%s: too many command-line arguments (first is \"%s\")\n"), progname, argv[optind + 1]); + fprintf(stderr, _("Try \"%s --help\" for more information.\n"), progname); + exit(1); } setup_cancel_handler(); diff --git a/src/bin/scripts/vacuumdb.c b/src/bin/scripts/vacuumdb.c index a93541e06ff..7457e6d3046 100644 --- a/src/bin/scripts/vacuumdb.c +++ b/src/bin/scripts/vacuumdb.c @@ -129,23 +129,18 @@ main(int argc, char *argv[]) } } - - /* - * Non-option argument specifies database name - * as long as it wasn't already specified with -d / --dbname - */ - if (optind < argc && dbname == NULL) + switch (argc - optind) { - dbname = argv[optind]; - optind++; - } - - if (optind < argc) - { - fprintf(stderr, _("%s: too many command-line arguments (first is \"%s\")\n"), - progname, argv[optind + 1]); - fprintf(stderr, _("Try \"%s --help\" for more information.\n"), progname); - exit(1); + case 0: + break; + case 1: + dbname = argv[optind]; + break; + default: + fprintf(stderr, _("%s: too many command-line arguments (first is \"%s\")\n"), + progname, argv[optind + 1]); + fprintf(stderr, _("Try \"%s --help\" for more information.\n"), progname); + exit(1); } if (analyze_only) |