"Returns non-nil if RESPONSE is an 'BYE' response."
(` (assq 'bye (, response))))
+(defmacro elmo-imap4-response-garbage-p (response)
+ "Returns non-nil if RESPONSE is an 'garbage' response."
+ (` (assq 'garbage (, response))))
+
(defmacro elmo-imap4-response-value (response symbol)
"Get value of the SYMBOL from RESPONSE."
(` (nth 1 (assq (, symbol) (, response)))))
matched))
(defmacro elmo-imap4-response-error-text (response)
- "Returns text of NO, BAD, BYE response."
+ "Returns text of NO, BAD, BYE, response."
(` (nth 1 (or (elmo-imap4-response-value (, response) 'no)
(elmo-imap4-response-value (, response) 'bad)
(elmo-imap4-response-value (, response) 'bye)))))
(with-current-buffer (process-buffer
(elmo-network-session-process-internal session))
(while (not (or (string= tag elmo-imap4-reached-tag)
- (elmo-imap4-response-bye-p elmo-imap4-current-response)))
+ (elmo-imap4-response-bye-p elmo-imap4-current-response)
+ (when (elmo-imap4-response-garbage-p
+ elmo-imap4-current-response)
+ (message "Garbage response: %s"
+ (elmo-imap4-response-value
+ elmo-imap4-current-response
+ 'garbage))
+ t)))
(when (memq (process-status
(elmo-network-session-process-internal session))
'(open run))
(let* ((root (elmo-imap4-folder-mailbox-internal folder))
(session (elmo-imap4-get-session folder))
(prefix (elmo-folder-prefix-internal folder))
- (delim (or
- (cdr
+ (namespace-assoc
(elmo-string-matched-assoc
root
(with-current-buffer (elmo-network-session-buffer session)
elmo-imap4-server-namespace)))
+ (delim (or (cdr namespace-assoc)
elmo-imap4-default-hierarchy-delimiter))
;; Append delimiter when root with namespace.
- (root (if (and (match-end 1)
+ (root (if (and namespace-assoc
+ (match-end 1)
(string= (substring root (match-end 1))
""))
(concat root delim)
(unless elmo-inhibit-display-retrieval-progress
(elmo-display-progress 'elmo-imap4-display-literal-progress
"Retrieving..." 100) ; remove progress bar.
- (message "Retrieving...done."))
+ (message "Retrieving...done"))
(if (setq response (elmo-imap4-response-bodydetail-text
(elmo-imap4-response-value-all
response 'fetch)))