]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix imap fetching multiple mailboxes (bug#54158)
authorAndrew G Cohen <cohen@andy.bu.edu>
Sun, 20 Mar 2022 05:49:37 +0000 (13:49 +0800)
committerAndrew G Cohen <cohen@andy.bu.edu>
Sun, 20 Mar 2022 23:56:34 +0000 (07:56 +0800)
* lisp/gnus/mail-source.el (mail-source-fetch-imap): Variables
mailbox-source-string and remove should be reset for each mailbox.

lisp/gnus/mail-source.el

index 04de70bf0f19e2ad502b78384a7c1ac8accc28b3..320bc9c3b0edbf0dcee2e8629d2cb4611f169baa 100644 (file)
@@ -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