Fix pg_regress to print the correct postmaster address on Windows.

pg_regress reported "Unix socket" as the default location whenever
HAVE_UNIX_SOCKETS is defined.  However, that's not been accurate
on Windows since 8f3ec75de.  Update this logic to match what libpq
actually does now.

This is just cosmetic, but still it's potentially misleading.
Back-patch to v13 where 8f3ec75de came in.

Discussion: https://postgr.es/m/3894060.1646415641@sss.pgh.pa.us
pull/80/head
Tom Lane 4 years ago
parent 791b1b71da
commit 9240589798
  1. 5
      src/interfaces/libpq/fe-connect.c
  2. 10
      src/test/regress/pg_regress.c

@ -1115,6 +1115,11 @@ connectOptions2(PGconn *conn)
{
if (ch->host)
free(ch->host);
/*
* This bit selects the default host location. If you change
* this, see also pg_regress.
*/
#ifdef HAVE_UNIX_SOCKETS
if (DEFAULT_PGSOCKET_DIR[0])
{

@ -746,10 +746,16 @@ initialize_environment(void)
*/
pghost = getenv("PGHOST");
pgport = getenv("PGPORT");
#ifndef HAVE_UNIX_SOCKETS
if (!pghost)
pghost = "localhost";
{
/* Keep this bit in sync with libpq's default host location: */
#ifdef HAVE_UNIX_SOCKETS
if (DEFAULT_PGSOCKET_DIR[0])
/* do nothing, we'll print "Unix socket" below */ ;
else
#endif
pghost = "localhost"; /* DefaultHost in fe-connect.c */
}
if (pghost && pgport)
printf(_("(using postmaster on %s, port %s)\n"), pghost, pgport);

Loading…
Cancel
Save