diff options
author | Andrew G Cohen <cohen@andy.bu.edu> | 2022-03-20 13:49:37 +0800 |
---|---|---|
committer | Andrew G Cohen <cohen@andy.bu.edu> | 2022-03-21 07:56:34 +0800 |
commit | 01336a2582269040a05bca4376285b1b1c8e3449 (patch) | |
tree | eee9f470891f35f07d8beadb5321c8ac4c689e27 | |
parent | 6b923a5ebc6b2183fd2d7be54e1804bb088d59ed (diff) | |
download | emacs-01336a2582269040a05bca4376285b1b1c8e3449.tar.gz emacs-01336a2582269040a05bca4376285b1b1c8e3449.tar.bz2 emacs-01336a2582269040a05bca4376285b1b1c8e3449.zip |
Fix imap fetching multiple mailboxes (bug#54158)
* lisp/gnus/mail-source.el (mail-source-fetch-imap): Variables
mailbox-source-string and remove should be reset for each mailbox.
-rw-r--r-- | lisp/gnus/mail-source.el | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/lisp/gnus/mail-source.el b/lisp/gnus/mail-source.el index 04de70bf0f1..320bc9c3b0e 100644 --- a/lisp/gnus/mail-source.el +++ b/lisp/gnus/mail-source.el @@ -1065,9 +1065,7 @@ This only works when `display-time' is enabled." (let ((from (format "%s:%s:%s" server user port)) (found 0) (buf (generate-new-buffer " *imap source*")) - (mail-source-string (format "imap:%s:%s" server mailbox)) - (imap-shell-program (or (list program) imap-shell-program)) - remove) + (imap-shell-program (or (list program) imap-shell-program))) (if (and (imap-open server port stream authentication buf) (imap-authenticate user (or (cdr (assoc from mail-source-password-cache)) @@ -1076,8 +1074,10 @@ This only works when `display-time' is enabled." (let ((mailbox-list (if (listp mailbox) mailbox (list mailbox)))) (dolist (mailbox mailbox-list) (when (imap-mailbox-select mailbox nil buf) - (let ((coding-system-for-write mail-source-imap-file-coding-system) - str) + (let ((coding-system-for-write + mail-source-imap-file-coding-system) + (mail-source-string (format "imap:%s:%s" server mailbox)) + str remove) (message "Fetching from %s..." mailbox) (with-temp-file mail-source-crash-box ;; Avoid converting 8-bit chars from inserted strings to |