diff options
author | Peter Eisentraut <peter_e@gmx.net> | 2000-07-03 20:46:10 +0000 |
---|---|---|
committer | Peter Eisentraut <peter_e@gmx.net> | 2000-07-03 20:46:10 +0000 |
commit | e2d3932e0eaaac60928dacfc7902ac788b25b100 (patch) | |
tree | 025e7e5df1981f297d15d8fa1779b94c03f99138 /src/backend/tcop/postgres.c | |
parent | 51afb9305c3a45891bd49637827a99631be8b488 (diff) | |
download | postgresql-e2d3932e0eaaac60928dacfc7902ac788b25b100.tar.gz postgresql-e2d3932e0eaaac60928dacfc7902ac788b25b100.zip |
Move PGPORT envar handling to ResetAllOptions(). Improve long options
parsing to not clobber the optarg string -- so that we can bring
SetOptsFile() up to speed.
Diffstat (limited to 'src/backend/tcop/postgres.c')
-rw-r--r-- | src/backend/tcop/postgres.c | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/src/backend/tcop/postgres.c b/src/backend/tcop/postgres.c index 724cfc29339..ddd7f07bc28 100644 --- a/src/backend/tcop/postgres.c +++ b/src/backend/tcop/postgres.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/tcop/postgres.c,v 1.163 2000/06/29 07:35:57 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/tcop/postgres.c,v 1.164 2000/07/03 20:46:00 petere Exp $ * * NOTES * this is the "main" module of the postgres backend and @@ -1167,18 +1167,16 @@ PostgresMain(int argc, char *argv[], int real_argc, char *real_argv[]) case '-': { - /* A little 'long argument' simulation */ - /* (copy&pasted from PostmasterMain() */ - size_t equal_pos = strcspn(optarg, "="); - char *cp; + char *name, *value; - if (optarg[equal_pos] != '=') + ParseLongOption(optarg, &name, &value); + if (!value) elog(ERROR, "--%s requires argument", optarg); - optarg[equal_pos] = '\0'; - for(cp = optarg; *cp; cp++) - if (*cp == '-') - *cp = '_'; - SetConfigOption(optarg, optarg + equal_pos + 1, PGC_BACKEND); + + SetConfigOption(name, value, PGC_BACKEND); + free(name); + if (value) + free(value); break; } @@ -1408,7 +1406,7 @@ PostgresMain(int argc, char *argv[], int real_argc, char *real_argv[]) if (!IsUnderPostmaster) { puts("\nPOSTGRES backend interactive interface "); - puts("$Revision: 1.163 $ $Date: 2000/06/29 07:35:57 $\n"); + puts("$Revision: 1.164 $ $Date: 2000/07/03 20:46:00 $\n"); } /* |