diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2010-12-16 16:22:05 -0500 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2010-12-16 16:23:05 -0500 |
commit | 61b53695fbbedb7fa9d394e71bf2affdc494e6b0 (patch) | |
tree | ca0928724860207b44639a6bfbf0c4feb8a4db84 /src/backend | |
parent | cd1fefa973968ff4e3760a9593f70fe2da0def48 (diff) | |
download | postgresql-61b53695fbbedb7fa9d394e71bf2affdc494e6b0.tar.gz postgresql-61b53695fbbedb7fa9d394e71bf2affdc494e6b0.zip |
Remove optreset from src/port/ implementations of getopt and getopt_long.
We don't actually need optreset, because we can easily fix the code to
ensure that it's cleanly restartable after having completed a scan over the
argv array; which is the only case we need to restart in. Getting rid of
it avoids a class of interactions with the system libraries and allows
reversion of my change of yesterday in postmaster.c and postgres.c.
Back-patch to 8.4. Before that the getopt code was a bit different anyway.
Diffstat (limited to 'src/backend')
-rw-r--r-- | src/backend/postmaster/postmaster.c | 5 | ||||
-rw-r--r-- | src/backend/tcop/postgres.c | 5 |
2 files changed, 4 insertions, 6 deletions
diff --git a/src/backend/postmaster/postmaster.c b/src/backend/postmaster/postmaster.c index 50d064407b2..2b12b1704cc 100644 --- a/src/backend/postmaster/postmaster.c +++ b/src/backend/postmaster/postmaster.c @@ -313,8 +313,7 @@ extern char *optarg; extern int optind, opterr; -/* If not HAVE_GETOPT, we are using src/port/getopt.c, which has optreset */ -#if defined(HAVE_INT_OPTRESET) || !defined(HAVE_GETOPT) +#ifdef HAVE_INT_OPTRESET extern int optreset; /* might not be declared by system headers */ #endif @@ -752,7 +751,7 @@ PostmasterMain(int argc, char *argv[]) * getopt(3) library so that it will work correctly in subprocesses. */ optind = 1; -#if defined(HAVE_INT_OPTRESET) || !defined(HAVE_GETOPT) +#ifdef HAVE_INT_OPTRESET optreset = 1; /* some systems need this too */ #endif diff --git a/src/backend/tcop/postgres.c b/src/backend/tcop/postgres.c index 7657458693f..ff2e9bd0aaa 100644 --- a/src/backend/tcop/postgres.c +++ b/src/backend/tcop/postgres.c @@ -78,8 +78,7 @@ extern char *optarg; extern int optind; -/* If not HAVE_GETOPT, we are using src/port/getopt.c, which has optreset */ -#if defined(HAVE_INT_OPTRESET) || !defined(HAVE_GETOPT) +#ifdef HAVE_INT_OPTRESET extern int optreset; /* might not be declared by system headers */ #endif @@ -3443,7 +3442,7 @@ process_postgres_switches(int argc, char *argv[], GucContext ctx) * or when this function is called a second time with another array. */ optind = 1; -#if defined(HAVE_INT_OPTRESET) || !defined(HAVE_GETOPT) +#ifdef HAVE_INT_OPTRESET optreset = 1; /* some systems need this too */ #endif |