From deda2fa6804e19f6ae52291e9895c24cd0f7192d Mon Sep 17 00:00:00 2001 From: hiro Date: Fri, 19 Jan 2007 01:54:12 +0000 Subject: prevent incorporation on sending. git-svn-id: svn://sylpheed.sraoss.jp/sylpheed/trunk@1498 ee746299-78ed-0310-b773-934348b2243d --- ChangeLog | 5 +++++ ChangeLog.ja | 5 +++++ src/send_message.c | 8 ++++++++ 3 files changed, 18 insertions(+) diff --git a/ChangeLog b/ChangeLog index 115a0311..829d7be4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2007-01-19 + + * src/send_message.c: send_message_smtp(): prevent incorporation + while executing the event loop. + 2007-01-18 * libsylph/prefs_common.[ch] diff --git a/ChangeLog.ja b/ChangeLog.ja index 044d853b..5bcf1f5b 100644 --- a/ChangeLog.ja +++ b/ChangeLog.ja @@ -1,3 +1,8 @@ +2007-01-19 + + * src/send_message.c: send_message_smtp(): イベントループの実行中は + 受信を行わないようにした。 + 2007-01-18 * libsylph/prefs_common.[ch] diff --git a/src/send_message.c b/src/send_message.c index 0f86a114..5ab1345d 100644 --- a/src/send_message.c +++ b/src/send_message.c @@ -477,6 +477,8 @@ static gint send_message_smtp(PrefsAccount *ac_prefs, GSList *to_list, FILE *fp) ac_prefs->set_domain ? g_strdup(ac_prefs->domain) : NULL; if (ac_prefs->use_smtp_auth) { + inc_lock(); + smtp_session->forced_auth_type = ac_prefs->smtp_auth_type; if (ac_prefs->smtp_userid) { @@ -515,6 +517,8 @@ static gint send_message_smtp(PrefsAccount *ac_prefs, GSList *to_list, FILE *fp) g_strdup(smtp_session->pass); } } + + inc_unlock(); } else { smtp_session->user = NULL; smtp_session->pass = NULL; @@ -571,9 +575,12 @@ static gint send_message_smtp(PrefsAccount *ac_prefs, GSList *to_list, FILE *fp) session_set_timeout(session, prefs_common.io_timeout_secs * 1000); + inc_lock(); + if (session_connect(session, ac_prefs->smtp_server, port) < 0) { session_destroy(session); send_progress_dialog_destroy(dialog); + inc_unlock(); return -1; } @@ -610,6 +617,7 @@ static gint send_message_smtp(PrefsAccount *ac_prefs, GSList *to_list, FILE *fp) session_destroy(session); send_progress_dialog_destroy(dialog); + inc_unlock(); return ret; } -- cgit v1.2.3