aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLars Magne Ingebrigtsen2011-09-18 09:36:20 +0200
committerLars Magne Ingebrigtsen2011-09-18 09:36:20 +0200
commit5d5ac8ec033a741c6931ef874ac4c4caa0a9359c (patch)
treef24815e56476e7c182deb765240909fe3fd5c1d9
parent7debb7d8530efe70f33f32e9fb1a638198938b0c (diff)
downloademacs-5d5ac8ec033a741c6931ef874ac4c4caa0a9359c.tar.gz
emacs-5d5ac8ec033a741c6931ef874ac4c4caa0a9359c.zip
(smtpmail-via-smtp): Ignore errors that arise when sending QUIT.
Fixes: debbugs:9312
-rw-r--r--lisp/ChangeLog5
-rw-r--r--lisp/mail/smtpmail.el8
2 files changed, 11 insertions, 2 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 74ba03e0246..cf5c9326d23 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,8 @@
12011-09-18 Lars Magne Ingebrigtsen <larsi@gnus.org>
2
3 * mail/smtpmail.el (smtpmail-via-smtp): Ignore errors that arise
4 when sending QUIT (bug#9312).
5
12011-09-17 Chong Yidong <cyd@stupidchicken.com> 62011-09-17 Chong Yidong <cyd@stupidchicken.com>
2 7
3 * replace.el (occur-mode-map): Rebind occur-edit-mode to "e" (Bug#8463). 8 * replace.el (occur-mode-map): Rebind occur-edit-mode to "e" (Bug#8463).
diff --git a/lisp/mail/smtpmail.el b/lisp/mail/smtpmail.el
index 9fe19581e81..1c6f2c7b7ed 100644
--- a/lisp/mail/smtpmail.el
+++ b/lisp/mail/smtpmail.el
@@ -773,8 +773,12 @@ The list is in preference order.")
773 (eq (car result) 530)) 773 (eq (car result) 530))
774 ;; We got a "530 auth required", so we close and try 774 ;; We got a "530 auth required", so we close and try
775 ;; again, this time asking the user for a password. 775 ;; again, this time asking the user for a password.
776 (smtpmail-send-command process "QUIT") 776 ;; We ignore any errors here, because some MTAs just
777 (smtpmail-read-response process) 777 ;; close the connection immediately after giving the
778 ;; error message.
779 (ignore-errors
780 (smtpmail-send-command process "QUIT")
781 (smtpmail-read-response process))
778 (delete-process process) 782 (delete-process process)
779 (setq process nil) 783 (setq process nil)
780 (throw 'done 784 (throw 'done