Fix PQsetdbLogin() backward compatibility problem.
If pghost == "" and pgport == "" then PQsetdbLogin() fails with a error message: Is the postmaster running locally and accepting connections on Unix socket '/tmp/.s.PGSQL.0'? I see many applications such as PHP fails due to this behavior. Now if pgport == "", then it is assumed to be a DEF_PGPORT_STR. This is the same behavior as the version prior 7.1.
This commit is contained in:
parent
317215fc55
commit
1deb6e7d41
@ -8,7 +8,7 @@
|
|||||||
*
|
*
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-connect.c,v 1.155 2000/12/18 17:33:41 tgl Exp $
|
* $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-connect.c,v 1.156 2000/12/22 07:59:32 ishii Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
@ -438,7 +438,7 @@ PQsetdbLogin(const char *pghost, const char *pgport, const char *pgoptions,
|
|||||||
else if ((tmp = getenv("PGHOST")) != NULL)
|
else if ((tmp = getenv("PGHOST")) != NULL)
|
||||||
conn->pghost = strdup(tmp);
|
conn->pghost = strdup(tmp);
|
||||||
|
|
||||||
if (pgport == NULL)
|
if (pgport == NULL || pgport[0] == '\0')
|
||||||
{
|
{
|
||||||
if ((tmp = getenv("PGPORT")) == NULL)
|
if ((tmp = getenv("PGPORT")) == NULL)
|
||||||
tmp = DEF_PGPORT_STR;
|
tmp = DEF_PGPORT_STR;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user