aboutsummaryrefslogtreecommitdiffstats
path: root/mail
diff options
context:
space:
mode:
authorMilan Crha <mcrha@redhat.com>2010-12-15 22:53:03 +0800
committerMilan Crha <mcrha@redhat.com>2010-12-15 22:53:03 +0800
commit01bff4baf00559f9cc6b3b78f7fd03a22d6ed327 (patch)
tree7041ac6fc401b3b76eefccdbec7fdc93a365f01b /mail
parenta6bce7b74b99cd8ade8280ca52fb968438e6bf78 (diff)
downloadgsoc2013-evolution-01bff4baf00559f9cc6b3b78f7fd03a22d6ed327.tar
gsoc2013-evolution-01bff4baf00559f9cc6b3b78f7fd03a22d6ed327.tar.gz
gsoc2013-evolution-01bff4baf00559f9cc6b3b78f7fd03a22d6ed327.tar.bz2
gsoc2013-evolution-01bff4baf00559f9cc6b3b78f7fd03a22d6ed327.tar.lz
gsoc2013-evolution-01bff4baf00559f9cc6b3b78f7fd03a22d6ed327.tar.xz
gsoc2013-evolution-01bff4baf00559f9cc6b3b78f7fd03a22d6ed327.tar.zst
gsoc2013-evolution-01bff4baf00559f9cc6b3b78f7fd03a22d6ed327.zip
Bug #634385 - Crash in smtp_connect
Diffstat (limited to 'mail')
-rw-r--r--mail/e-mail-session-utils.c6
-rw-r--r--mail/e-mail-session.c6
2 files changed, 11 insertions, 1 deletions
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)