Ensure pg_ctl behaves sanely when data directory is not specified.

Tom Lane <tgl@sss.pgh.pa.us>

Commit: 51e61b04f8040f627e7605594095b06c10582fd0
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: 2012-06-12T02:47:16Z
Releases: 9.2.0
Ensure pg_ctl behaves sanely when data directory is not specified.

Commit aaa6e1def292cdacb6b27088898793b1b879fedf introduced multiple hazards
in the case where pg_ctl is executed with neither a -D switch nor any
PGDATA environment variable.  It would dump core on machines which are
unforgiving about printf("%s", NULL), or failing that possibly give a
rather unhelpful complaint about being unable to execute "postgres -C",
rather than the logically prior complaint about not being told where the
data directory is.

Edmund Horner's report suggests that there is another, Windows-specific
hazard here, but I'm not the person to fix that; it would in any case only
be significant when trying to use a config-only PGDATA pointer.

Files

PathChange+/−
src/bin/pg_ctl/pg_ctl.c modified +6 −0