aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2007-01-19 01:54:12 +0000
committerhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2007-01-19 01:54:12 +0000
commitdeda2fa6804e19f6ae52291e9895c24cd0f7192d (patch)
tree815dd6a23b7f7df497e5f33eb69ac38ec636e1c3
parent33d5b6b450180b7b2d1dfcee16f493e172d8a89f (diff)
prevent incorporation on sending.
git-svn-id: svn://sylpheed.sraoss.jp/sylpheed/trunk@1498 ee746299-78ed-0310-b773-934348b2243d
-rw-r--r--ChangeLog5
-rw-r--r--ChangeLog.ja5
-rw-r--r--src/send_message.c8
3 files changed, 18 insertions, 0 deletions
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;
}