commit d5427e71da28856c5e43396a37ffd0c906947499 (HEAD, refs/remotes/origin/master) Author: Lars Magne Ingebrigtsen Date: Mon Mar 14 20:23:30 2016 +0100 Disable MOVE more for Dovecot * lisp/gnus/nnimap.el (nnimap-process-expiry-targets): Also disable MOVE when expirying. (nnimap-split-incoming-mail): And when splitting mail. diff --git a/lisp/gnus/nnimap.el b/lisp/gnus/nnimap.el index 90de168..2e2ec59 100644 --- a/lisp/gnus/nnimap.el +++ b/lisp/gnus/nnimap.el @@ -997,7 +997,8 @@ textual parts.") (and (nnimap-change-group group server) (with-current-buffer (nnimap-buffer) (nnheader-message 7 "Expiring articles from %s: %s" group articles) - (let ((can-move (nnimap-capability "MOVE"))) + (let ((can-move (and (nnimap-capability "MOVE") + (equal (nnimap-quirk "MOVE") "MOVE")))) (nnimap-command (if can-move "UID MOVE %s %S" @@ -2068,7 +2069,8 @@ Return the server's response to the SELECT or EXAMINE command." nnmail-split-fancy)) (nnmail-inhibit-default-split-group t) (groups (nnimap-get-groups)) - (can-move (nnimap-capability "MOVE")) + (can-move (and (nnimap-capability "MOVE") + (equal (nnimap-quirk "MOVE") "MOVE"))) new-articles) (erase-buffer) (nnimap-command "SELECT %S" nnimap-inbox) commit 8ed27bdf88cab134c26f3609c4d11c574f74705c Author: Lars Magne Ingebrigtsen Date: Mon Mar 14 20:21:02 2016 +0100 Don't use MOVE on Dovecot * lisp/gnus/nnimap.el (nnimap-request-move-article): Don't use MOVE on Dovecot, since it's broken in many versions. (nnimap-quirks): Mark MOVE on Dovecot as non-working. diff --git a/lisp/gnus/nnimap.el b/lisp/gnus/nnimap.el index fc9304f..90de168 100644 --- a/lisp/gnus/nnimap.el +++ b/lisp/gnus/nnimap.el @@ -157,7 +157,8 @@ textual parts.") (forward "gnus-forward"))) (defvar nnimap-quirks - '(("QRESYNC" "Zimbra" "QRESYNC "))) + '(("QRESYNC" "Zimbra" "QRESYNC ") + ("MOVE" "Dovecot" nil))) (defvar nnimap-inhibit-logging nil) @@ -929,7 +930,8 @@ textual parts.") (let ((message-id (message-field-value "message-id"))) (if internal-move-group (with-current-buffer (nnimap-buffer) - (let* ((can-move (nnimap-capability "MOVE")) + (let* ((can-move (and (nnimap-capability "MOVE") + (equal (nnimap-quirk "MOVE") "MOVE"))) (command (if can-move "UID MOVE %d %S" "UID COPY %d %S"))