break;
case 'o':
- old_cluster.pgopts = pg_strdup(optarg);
+ /* append option? */
+ if (!old_cluster.pgopts)
+ old_cluster.pgopts = pg_strdup(optarg);
+ else
+ {
+ char *old_pgopts = old_cluster.pgopts;
+
+ old_cluster.pgopts = psprintf("%s %s", old_pgopts, optarg);
+ free(old_pgopts);
+ }
break;
case 'O':
- new_cluster.pgopts = pg_strdup(optarg);
+ /* append option? */
+ if (!new_cluster.pgopts)
+ new_cluster.pgopts = pg_strdup(optarg);
+ else
+ {
+ char *new_pgopts = new_cluster.pgopts;
+
+ new_cluster.pgopts = psprintf("%s %s", new_pgopts, optarg);
+ free(new_pgopts);
+ }
break;
/*
* Someday, the port number option could be removed and passed
* using -o/-O, but that requires postmaster -C to be
- * supported on all old/new versions.
+ * supported on all old/new versions (added in PG 9.2).
*/
case 'p':
if ((old_cluster.port = atoi(optarg)) <= 0)
options
options
options to be passed directly to the
- old postgres command
+ old postgres command; multiple
+ option invocations are appended
options
options
options to be passed directly to the
- new postgres command
+ new postgres command; multiple
+ option invocations are appended
Specifies options to be passed directly to the
- postgres command.
+ postgres command; multiple
+ option invocations are appended.
The options should usually be surrounded by single or double
class="parameter">extra-options are passed to
all server processes started by this
postgres process. If the option string contains
- any spaces, the entire string must be quoted.
+ any spaces, the entire string must be quoted; multiple
+ option invocations are appended.
register_servicename = pg_strdup(optarg);
break;
case 'o':
- post_opts = pg_strdup(optarg);
+ /* append option? */
+ if (!post_opts)
+ post_opts = pg_strdup(optarg);
+ else
+ {
+ char *old_post_opts = post_opts;
+
+ post_opts = psprintf("%s %s", old_post_opts, optarg);
+ free(old_post_opts);
+ }
break;
case 'p':
exec_path = pg_strdup(optarg);