[evolution] Bug #634385 - Crash in smtp_connect



commit 01bff4baf00559f9cc6b3b78f7fd03a22d6ed327
Author: Milan Crha <mcrha redhat com>
Date:   Wed Dec 15 15:53:03 2010 +0100

    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 deletions(-)
---
diff --git a/mail/e-mail-session-utils.c b/mail/e-mail-session-utils.c
index 0df301f..f91bc73 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 debaf28..68d553e 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)



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]