aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>2008-06-26 01:12:20 +0000
committerBruce Momjian <bruce@momjian.us>2008-06-26 01:12:20 +0000
commit124c22d5fdc6f6e9a9774af348889ef53856b2b9 (patch)
treea645569ea94e396fe0aa98f4cad1ed7fbc55a521 /src
parent5f6f840e93a3649e0d07e85bad188d163e96ec0e (diff)
downloadpostgresql-124c22d5fdc6f6e9a9774af348889ef53856b2b9.tar.gz
postgresql-124c22d5fdc6f6e9a9774af348889ef53856b2b9.zip
Remove use of postmaster.opts.default by pg_ctl.
Diffstat (limited to 'src')
-rw-r--r--src/bin/pg_ctl/pg_ctl.c47
1 files changed, 18 insertions, 29 deletions
diff --git a/src/bin/pg_ctl/pg_ctl.c b/src/bin/pg_ctl/pg_ctl.c
index 6e0cd1a6654..a4684cf74f0 100644
--- a/src/bin/pg_ctl/pg_ctl.c
+++ b/src/bin/pg_ctl/pg_ctl.c
@@ -4,7 +4,7 @@
*
* Portions Copyright (c) 1996-2008, PostgreSQL Global Development Group
*
- * $PostgreSQL: pgsql/src/bin/pg_ctl/pg_ctl.c,v 1.98 2008/04/24 14:23:43 mha Exp $
+ * $PostgreSQL: pgsql/src/bin/pg_ctl/pg_ctl.c,v 1.99 2008/06/26 01:12:20 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -140,7 +140,6 @@ static void read_post_opts(void);
static bool test_postmaster_connection(bool);
static bool postmaster_is_alive(pid_t pid);
-static char def_postopts_file[MAXPGPATH];
static char postopts_file[MAXPGPATH];
static char pid_file[MAXPGPATH];
static char conf_file[MAXPGPATH];
@@ -575,42 +574,35 @@ unlimit_core_size(void)
static void
read_post_opts(void)
{
- char *optline = NULL;
-
if (post_opts == NULL)
{
char **optlines;
- int len;
- optlines = readfile(ctl_command == RESTART_COMMAND ?
- postopts_file : def_postopts_file);
- if (optlines == NULL)
+ post_opts = ""; /* defatult */
+ if (ctl_command == RESTART_COMMAND)
{
- if (ctl_command == START_COMMAND || ctl_command == RUN_AS_SERVICE_COMMAND)
- post_opts = "";
- else
+ optlines = readfile(postopts_file);
+ if (optlines == NULL)
{
write_stderr(_("%s: could not read file \"%s\"\n"), progname, postopts_file);
exit(1);
}
- }
- else if (optlines[0] == NULL || optlines[1] != NULL)
- {
- write_stderr(_("%s: option file \"%s\" must have exactly one line\n"),
- progname, ctl_command == RESTART_COMMAND ?
- postopts_file : def_postopts_file);
- exit(1);
- }
- else
- {
- optline = optlines[0];
- len = strcspn(optline, "\r\n");
- optline[len] = '\0';
-
- if (ctl_command == RESTART_COMMAND)
+ else if (optlines[0] == NULL || optlines[1] != NULL)
{
+ write_stderr(_("%s: option file \"%s\" must have exactly one line\n"),
+ progname, postopts_file);
+ exit(1);
+ }
+ else
+ {
+ int len;
+ char *optline = NULL;
char *arg1;
+ optline = optlines[0];
+ len = strcspn(optline, "\r\n");
+ optline[len] = '\0';
+
arg1 = strchr(optline, *SYSTEMQUOTE);
if (arg1 == NULL || arg1 == optline)
post_opts = "";
@@ -622,8 +614,6 @@ read_post_opts(void)
if (postgres_path != NULL)
postgres_path = optline;
}
- else
- post_opts = optline;
}
}
}
@@ -1894,7 +1884,6 @@ main(int argc, char **argv)
if (pg_data)
{
- snprintf(def_postopts_file, MAXPGPATH, "%s/postmaster.opts.default", pg_data);
snprintf(postopts_file, MAXPGPATH, "%s/postmaster.opts", pg_data);
snprintf(pid_file, MAXPGPATH, "%s/postmaster.pid", pg_data);
snprintf(conf_file, MAXPGPATH, "%s/postgresql.conf", pg_data);