diff --git a/src/command/cmd_funcs.c b/src/command/cmd_funcs.c index 55965690..60b7010b 100644 --- a/src/command/cmd_funcs.c +++ b/src/command/cmd_funcs.c @@ -438,7 +438,7 @@ cmd_connect(ProfWin* window, const char* const command, gchar** args) // no account password setting, prompt } else { - account->password = ui_ask_password(); + account->password = ui_ask_password(false); conn_status = cl_ev_connect_account(account); free(account->password); account->password = NULL; @@ -450,7 +450,7 @@ cmd_connect(ProfWin* window, const char* const command, gchar** args) // connect with JID } else { jid = g_utf8_strdown(user, -1); - char* passwd = ui_ask_password(); + char* passwd = ui_ask_password(false); conn_status = cl_ev_connect_jid(jid, passwd, altdomain, port, tls_policy, auth_policy); free(passwd); } diff --git a/src/ui/core.c b/src/ui/core.c index 5021ac72..931417c4 100644 --- a/src/ui/core.c +++ b/src/ui/core.c @@ -993,9 +993,13 @@ ui_win_unread(int index) } char* -ui_ask_password(void) +ui_ask_password(gboolean confirm) { - status_bar_set_prompt("Enter password:"); + if (!confirm) { + status_bar_set_prompt("Enter password:"); + } else { + status_bar_set_prompt("Confirm password:"); + } return inp_get_password(); } diff --git a/src/ui/ui.h b/src/ui/ui.h index 8ce27840..391b906c 100644 --- a/src/ui/ui.h +++ b/src/ui/ui.h @@ -75,7 +75,7 @@ int ui_close_all_wins(void); int ui_close_read_wins(void); void ui_close_win(int index); int ui_win_unread(int index); -char* ui_ask_password(void); +char* ui_ask_password(gboolean confirm); char* ui_get_line(void); char* ui_ask_pgp_passphrase(const char* hint, int prev_fail); void ui_contact_online(char* barejid, Resource* resource, GDateTime* last_activity); diff --git a/tests/unittests/ui/stub_ui.c b/tests/unittests/ui/stub_ui.c index 61e18ee0..dc36678b 100644 --- a/tests/unittests/ui/stub_ui.c +++ b/tests/unittests/ui/stub_ui.c @@ -211,7 +211,7 @@ ui_win_unread(int index) } char* -ui_ask_password(void) +ui_ask_password(gboolean confirm) { return mock_ptr_type(char*); }