Skip to content

Commit e4129a0

Browse files
committed
Revert recent commit re positional arguments.
1 parent 8d2ef10 commit e4129a0

File tree

6 files changed

+38
-75
lines changed

6 files changed

+38
-75
lines changed

src/bin/initdb/initdb.c

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2612,11 +2612,8 @@ main(int argc, char *argv[])
26122612
}
26132613

26142614

2615-
/*
2616-
* Non-option argument specifies data directory
2617-
* as long as it wasn't already specified with -D / --pgdata
2618-
*/
2619-
if (optind < argc && strlen(pg_data) == 0)
2615+
/* Non-option argument specifies data directory */
2616+
if (optind < argc)
26202617
{
26212618
pg_data = xstrdup(argv[optind]);
26222619
optind++;

src/bin/scripts/clusterdb.c

Lines changed: 11 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -106,22 +106,18 @@ main(int argc, char *argv[])
106106
}
107107
}
108108

109-
/*
110-
* Non-option argument specifies database name
111-
* as long as it wasn't already specified with -d / --dbname
112-
*/
113-
if (optind < argc && dbname == NULL)
109+
switch (argc - optind)
114110
{
115-
dbname = argv[optind];
116-
optind++;
117-
}
118-
119-
if (optind < argc)
120-
{
121-
fprintf(stderr, _("%s: too many command-line arguments (first is \"%s\")\n"),
122-
progname, argv[optind + 1]);
123-
fprintf(stderr, _("Try \"%s --help\" for more information.\n"), progname);
124-
exit(1);
111+
case 0:
112+
break;
113+
case 1:
114+
dbname = argv[optind];
115+
break;
116+
default:
117+
fprintf(stderr, _("%s: too many command-line arguments (first is \"%s\")\n"),
118+
progname, argv[optind + 1]);
119+
fprintf(stderr, _("Try \"%s --help\" for more information.\n"), progname);
120+
exit(1);
125121
}
126122

127123
setup_cancel_handler();

src/bin/scripts/createlang.c

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -91,24 +91,14 @@ main(int argc, char *argv[])
9191
}
9292
}
9393

94-
/*
95-
* We set dbname from positional arguments if it is not
96-
* already set by option arguments -d. If not doing
97-
* listlangs, positional dbname must follow positional
98-
* langname.
99-
*/
100-
10194
if (argc - optind > 0)
10295
{
10396
if (listlangs)
104-
{
105-
if (dbname == NULL)
106-
dbname = argv[optind++];
107-
}
97+
dbname = argv[optind++];
10898
else
10999
{
110100
langname = argv[optind++];
111-
if (argc - optind > 0 && dbname == NULL)
101+
if (argc - optind > 0)
112102
dbname = argv[optind++];
113103
}
114104
}

src/bin/scripts/droplang.c

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -102,24 +102,14 @@ main(int argc, char *argv[])
102102
}
103103
}
104104

105-
/*
106-
* We set dbname from positional arguments if it is not
107-
* already set by option arguments -d. If not doing
108-
* listlangs, positional dbname must follow positional
109-
* langname.
110-
*/
111-
112105
if (argc - optind > 0)
113106
{
114107
if (listlangs)
115-
{
116-
if (dbname == NULL)
117-
dbname = argv[optind++];
118-
}
108+
dbname = argv[optind++];
119109
else
120110
{
121111
langname = argv[optind++];
122-
if (argc - optind > 0 && dbname == NULL)
112+
if (argc - optind > 0)
123113
dbname = argv[optind++];
124114
}
125115
}

src/bin/scripts/reindexdb.c

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -116,22 +116,17 @@ main(int argc, char *argv[])
116116
}
117117
}
118118

119-
/*
120-
* Non-option argument specifies database name
121-
* as long as it wasn't already specified with -d / --dbname
122-
*/
123-
if (optind < argc && dbname == NULL)
119+
switch (argc - optind)
124120
{
125-
dbname = argv[optind];
126-
optind++;
127-
}
128-
129-
if (optind < argc)
130-
{
131-
fprintf(stderr, _("%s: too many command-line arguments (first is \"%s\")\n"),
132-
progname, argv[optind + 1]);
133-
fprintf(stderr, _("Try \"%s --help\" for more information.\n"), progname);
134-
exit(1);
121+
case 0:
122+
break;
123+
case 1:
124+
dbname = argv[optind];
125+
break;
126+
default:
127+
fprintf(stderr, _("%s: too many command-line arguments (first is \"%s\")\n"), progname, argv[optind + 1]);
128+
fprintf(stderr, _("Try \"%s --help\" for more information.\n"), progname);
129+
exit(1);
135130
}
136131

137132
setup_cancel_handler();

src/bin/scripts/vacuumdb.c

Lines changed: 11 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -123,23 +123,18 @@ main(int argc, char *argv[])
123123
}
124124
}
125125

126-
127-
/*
128-
* Non-option argument specifies database name
129-
* as long as it wasn't already specified with -d / --dbname
130-
*/
131-
if (optind < argc && dbname == NULL)
126+
switch (argc - optind)
132127
{
133-
dbname = argv[optind];
134-
optind++;
135-
}
136-
137-
if (optind < argc)
138-
{
139-
fprintf(stderr, _("%s: too many command-line arguments (first is \"%s\")\n"),
140-
progname, argv[optind + 1]);
141-
fprintf(stderr, _("Try \"%s --help\" for more information.\n"), progname);
142-
exit(1);
128+
case 0:
129+
break;
130+
case 1:
131+
dbname = argv[optind];
132+
break;
133+
default:
134+
fprintf(stderr, _("%s: too many command-line arguments (first is \"%s\")\n"),
135+
progname, argv[optind + 1]);
136+
fprintf(stderr, _("Try \"%s --help\" for more information.\n"), progname);
137+
exit(1);
143138
}
144139

145140
setup_cancel_handler();

0 commit comments

Comments
 (0)