aboutsummaryrefslogtreecommitdiffstats
path: root/mail/e-mail-session.c
diff options
context:
space:
mode:
Diffstat (limited to 'mail/e-mail-session.c')
-rw-r--r--mail/e-mail-session.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/mail/e-mail-session.c b/mail/e-mail-session.c
index debaf28cea..68d553e97d 100644
--- a/mail/e-mail-session.c
+++ b/mail/e-mail-session.c
@@ -626,6 +626,9 @@ mail_session_get_password (CamelSession *session,
if (ret == NULL || (flags & CAMEL_SESSION_PASSWORD_REPROMPT)) {
gboolean remember;
+ g_free (ret);
+ ret = NULL;
+
if (url) {
if ((account = e_get_account_by_source_url (url)))
config_service = account->source;
@@ -674,6 +677,9 @@ mail_session_get_password (CamelSession *session,
ret = e_passwords_ask_password (title, domain, key, prompt, eflags, &remember, NULL);
+ if (!ret)
+ e_passwords_forget_password (domain, key);
+
g_free (title);
if (ret && config_service)