From 09ae89206ea119104dfece5176cc868175ce9304 Mon Sep 17 00:00:00 2001 From: Milan Crha Date: Wed, 15 Dec 2010 15:53:03 +0100 Subject: Bug #634385 - Crash in smtp_connect --- mail/e-mail-session-utils.c | 6 +++++- mail/e-mail-session.c | 6 ++++++ 2 files changed, 11 insertions(+), 1 deletion(-) (limited to 'mail') diff --git a/mail/e-mail-session-utils.c b/mail/e-mail-session-utils.c index 0df301f67f..f91bc73455 100644 --- a/mail/e-mail-session-utils.c +++ b/mail/e-mail-session-utils.c @@ -650,8 +650,12 @@ e_mail_session_send_to (EMailSession *session, } if (account != NULL) { - if (account->transport != NULL) + if (account->transport != NULL) { transport_uri = g_strdup (account->transport->url); + + /* to reprompt password on sending if needed */ + account->transport->get_password_canceled = FALSE; + } sent_folder_uri = g_strdup (account->sent_folder_uri); } 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) -- cgit v1.2.3