From 180ab25d5fe9513bea1d46f0866248aa56fc01a9 Mon Sep 17 00:00:00 2001 From: teranisi Date: Thu, 1 Nov 2001 01:28:09 +0000 Subject: [PATCH] * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected, delete process. (elmo-imap4-accept-ok): Ditto. --- elmo/ChangeLog | 6 ++++++ elmo/elmo-imap4.el | 17 ++++++++++------- 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/elmo/ChangeLog b/elmo/ChangeLog index 86f4521..a7b9859 100644 --- a/elmo/ChangeLog +++ b/elmo/ChangeLog @@ -1,3 +1,9 @@ +2001-11-01 Yuuichi Teranishi + + * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected, + delete process. + (elmo-imap4-accept-ok): Ditto. + 2001-10-25 Hiroya Murata * mmimap.el (mime-imap-entity-header-string): Don't check first diff --git a/elmo/elmo-imap4.el b/elmo/elmo-imap4.el index f9e64b2..0c2be18 100644 --- a/elmo/elmo-imap4.el +++ b/elmo/elmo-imap4.el @@ -248,7 +248,7 @@ If response is not `OK', causes error with IMAP response text." (defun elmo-imap4-send-command (session command) "Send COMMAND to the SESSION. -Returns a TAG string which is assigned to the COMAND." +Returns a TAG string which is assigned to the COMMAND." (let* ((command-args (if (listp command) command (list command))) @@ -261,10 +261,11 @@ Returns a TAG string which is assigned to the COMAND." (setq cmdstr (concat tag " ")) ;; (erase-buffer) No need. (goto-char (point-min)) - (if (elmo-imap4-response-bye-p elmo-imap4-current-response) - (signal 'elmo-imap4-bye-error - (list (elmo-imap4-response-error-text - elmo-imap4-current-response)))) + (when (elmo-imap4-response-bye-p elmo-imap4-current-response) + (elmo-network-close-session session) + (signal 'elmo-imap4-bye-error + (list (elmo-imap4-response-error-text + elmo-imap4-current-response)))) (setq elmo-imap4-current-response nil) (if elmo-imap4-parsing (error "IMAP process is running. Please wait (or plug again.)")) @@ -376,8 +377,10 @@ If response is not `OK' response, causes error with IMAP response text." (if (elmo-imap4-response-ok-p response) response (if (elmo-imap4-response-bye-p response) - (signal 'elmo-imap4-bye-error - (list (elmo-imap4-response-error-text response))) + (progn + (elmo-network-close-session session) + (signal 'elmo-imap4-bye-error + (list (elmo-imap4-response-error-text response)))) (error "IMAP error: %s" (or (elmo-imap4-response-error-text response) "No `OK' response from server.")))))) -- 1.7.10.4