]> granicus.if.org Git - postgresql/commitdiff
Revert recent commit re positional arguments.
authorAndrew Dunstan <andrew@dunslane.net>
Wed, 18 Apr 2012 14:58:01 +0000 (10:58 -0400)
committerAndrew Dunstan <andrew@dunslane.net>
Wed, 18 Apr 2012 14:58:01 +0000 (10:58 -0400)
src/bin/initdb/initdb.c
src/bin/scripts/clusterdb.c
src/bin/scripts/createlang.c
src/bin/scripts/droplang.c
src/bin/scripts/reindexdb.c
src/bin/scripts/vacuumdb.c

index bbc7997930351d4180e5b68467d3b3d6d3974d31..7ca4c934318ab0531f3012eba1f6989ba4c11049 100644 (file)
@@ -2563,11 +2563,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++;
index 8fe494a7527d7c445c7cd136deb4c8f157d8fd79..c2b2020af78c5ef31584a5ba7f7792b9dd8005a0 100644 (file)
@@ -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();
index ff86ec5949f0d27ef41d5c1dd57c2631f8a0db90..a36b39bdeea66f89c004a3efe65ee03e06e5492d 100644 (file)
@@ -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++];
                }
        }
index a7a9f3f283c9ae87cca92203e03095f4beab7d9f..b634506f0fb5a1a2df33a67c444f77447764196e 100644 (file)
@@ -102,24 +102,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++];
                }
        }
index 47fbcde1255caae1a41fc086c5c63e18c37abea5..9781b3eb0886a74315c893ff848c3b09282edd54 100644 (file)
@@ -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();
index ccf4b3153eda7f4a053a972e5c4a8779990a379d..0bac34954d4b6aaecb783af17aa8935f79269d44 100644 (file)
@@ -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)