1
0
mirror of https://github.com/postgres/postgres.git synced 2025-08-05 07:41:25 +03:00

Do not use an empty hostname.

When trying to connect to a given database libecpg should not try using an
empty hostname if no hostname was given.
This commit is contained in:
Michael Meskes
2014-01-01 12:24:19 +01:00
parent df090b3908
commit 119a598796

View File

@@ -325,7 +325,7 @@ ECPGconnect(int lineno, int c, const char *name, const char *user, const char *p
if (dbname != NULL) if (dbname != NULL)
{ {
/* get the detail information out of dbname */ /* get the detail information from dbname */
if (strncmp(dbname, "tcp:", 4) == 0 || strncmp(dbname, "unix:", 5) == 0) if (strncmp(dbname, "tcp:", 4) == 0 || strncmp(dbname, "unix:", 5) == 0)
{ {
int offset = 0; int offset = 0;
@@ -344,7 +344,7 @@ ECPGconnect(int lineno, int c, const char *name, const char *user, const char *p
/*------ /*------
* new style: * new style:
* <tcp|unix>:postgresql://server[:port|:/unixsocket/path:] * <tcp|unix>:postgresql://server[:port|:/unixsocket/path:]
* [/db name][?options] * [/db-name][?options]
*------ *------
*/ */
offset += strlen("postgresql://"); offset += strlen("postgresql://");
@@ -426,10 +426,13 @@ ECPGconnect(int lineno, int c, const char *name, const char *user, const char *p
} }
} }
else else
{
if (*(dbname + offset) != '\0')
{ {
host = ecpg_strdup(dbname + offset, lineno); host = ecpg_strdup(dbname + offset, lineno);
connect_params++; connect_params++;
} }
}
} }
} }