*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-connect.c,v 1.2 1996/07/12 04:53:57 scrappy Exp $
+ * $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-connect.c,v 1.3 1996/07/19 07:00:56 scrappy Exp $
*
*-------------------------------------------------------------------------
*/
} else
conn->pgoptions = strdup(pgoptions);
- if (!dbName || dbName[0] == '\0') {
- char errorMessage[ERROR_MSG_LENGTH];
- if (!(tmp = getenv("PGDATABASE")) &&
- !(tmp = fe_getauthname(errorMessage))) {
- sprintf(conn->errorMessage,
- "FATAL: PQsetdb: Unable to determine a database name!\n");
-/* pqdebug("%s", conn->errorMessage); */
- conn->dbName = NULL;
- return conn;
- }
+ if (((tmp = dbName) && (dbName[0] != '\0')) ||
+ ((tmp = getenv("PGDATABASE"))))
conn->dbName = strdup(tmp);
- } else
- conn->dbName = strdup(dbName);
-
+ else {
+ char errorMessage[ERROR_MSG_LENGTH];
+ if (tmp = fe_getauthname(errorMessage)) {
+ conn->dbName = strdup(tmp);
+ free(tmp);
+ }
+ else {
+ sprintf(conn->errorMessage,
+ "FATAL: PQsetdb: Unable to determine a database name!\n");
+/* pqdebug("%s", conn->errorMessage); */
+ conn->dbName = NULL;
+ return conn;
+ }
+ }
conn->status = connectDB(conn);
return conn;
}
user = fe_getauthname(conn->errorMessage);
if (!user)
goto connect_errReturn;
- strncpy(startup.database,conn->dbName,sizeof(startup.database));
strncpy(startup.user,user,sizeof(startup.user));
+ free(user);
+ strncpy(startup.database,conn->dbName,sizeof(startup.database));
strncpy(startup.tty,conn->pgtty,sizeof(startup.tty));
if (conn->pgoptions) {
strncpy(startup.options,conn->pgoptions, sizeof(startup.options));