Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit 77035fa

Browse files
committed
Fix bugs in PQhost().
In the platform that doesn't support Unix-domain socket, when neither host nor hostaddr are specified, the default host 'localhost' is used to connect to the server and PQhost() must return that, but it didn't. This patch fixes PQhost() so that it returns the default host in that case. Also this patch fixes PQhost() so that it doesn't return Unix-domain socket directory path in the platform that doesn't support Unix-domain socket. Back-patch to all supported versions.
1 parent 90afc7d commit 77035fa

File tree

1 file changed

+10
-1
lines changed

1 file changed

+10
-1
lines changed

src/interfaces/libpq/fe-connect.c

+10-1
Original file line numberDiff line numberDiff line change
@@ -5188,7 +5188,16 @@ PQhost(const PGconn *conn)
51885188
{
51895189
if (!conn)
51905190
return NULL;
5191-
return conn->pghost ? conn->pghost : conn->pgunixsocket;
5191+
if (conn->pghost != NULL && conn->pghost[0] != '\0')
5192+
return conn->pghost;
5193+
else
5194+
{
5195+
#ifdef HAVE_UNIX_SOCKETS
5196+
return conn->pgunixsocket;
5197+
#else
5198+
return DefaultHost;
5199+
#endif
5200+
}
51925201
}
51935202

51945203
char *

0 commit comments

Comments
 (0)