database_info *head_database_info;
database_info *last_database_info;
-static char *password = NULL;
+static bool have_password = false;
+static char password[100];
static char password_prompt[256];
/* Funcs */
else
sprintf(password_prompt, "Password for user %s: ", username);
if (try_password_opt == TRI_YES)
- password = simple_prompt(password_prompt, 100, false);
+ {
+ simple_prompt(password_prompt, password, sizeof(password), false);
+ have_password = true;
+ }
if (verbose_opt)
{
if (PQstatus(coord_conn) == CONNECTION_BAD &&
PQconnectionNeedsPassword(coord_conn) &&
- password == NULL &&
+ !have_password &&
try_password_opt != TRI_NO)
{
PQfinish(coord_conn);
- password = simple_prompt(password_prompt, 100, false);
+ simple_prompt(password_prompt, password, sizeof(password), false);
+ have_password = true;
new_pass = true;
}
} while (new_pass);