]> granicus.if.org Git - postgresql/commitdiff
Revert recent commit re positional arguments.
authorAndrew Dunstan <andrew@dunslane.net>
Wed, 18 Apr 2012 14:58:24 +0000 (10:58 -0400)
committerAndrew Dunstan <andrew@dunslane.net>
Wed, 18 Apr 2012 14:58:24 +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 09d505f2f789f52fe5325069049fd8cbff6a8375..018cfdc1506d897354091cb46470ce26a11b90a1 100644 (file)
@@ -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++;
index 624886e5c9e1d7753e2ec07ba75f7a926a149817..f4c317ae149fc80abaea4fbb0a9c4fd06f5696a4 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 a98fad5918e67a2323fb466c528f1629bf4c8094..c2153db630eec757c063385037417f0796f77530 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 22237dff4a16da99acc293dbe2050324429f24ad..7fadee0d51374e2a9ff78c1ee481a20e4b32b62e 100644 (file)
@@ -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++];
                }
        }
index f9272fecc39639dbda8d208714cf99207eabd4aa..53fff01a74b32b7f8c96966c1b9df16b03c5b1bd 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 a93541e06ffbd83cf22e1187c2eccb233e9c8483..7457e6d3046cd256fbf0b81448afc73e7f9059db 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)