aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLars Ingebrigtsen2019-09-27 01:14:01 +0200
committerLars Ingebrigtsen2019-09-27 01:14:06 +0200
commitff8a72fbe0f6e168e2871a53bbdaded4d0cc5612 (patch)
treee45ee5710239f5237aa0ad5d2f16e730cd9b9972
parent7e6fc3842e54dadbc4b570ab138d831a7f988947 (diff)
downloademacs-ff8a72fbe0f6e168e2871a53bbdaded4d0cc5612.tar.gz
emacs-ff8a72fbe0f6e168e2871a53bbdaded4d0cc5612.zip
Tweak updating of readedness marks on the IMAP server
* lisp/gnus/nnimap.el (nnimap-request-set-mark): Ensure that ticking/unticking also toggles readedness on the IMAP server (bug#22590).
-rw-r--r--lisp/gnus/nnimap.el11
1 files changed, 9 insertions, 2 deletions
diff --git a/lisp/gnus/nnimap.el b/lisp/gnus/nnimap.el
index 6f2ebfb7fe6..363e4186cbc 100644
--- a/lisp/gnus/nnimap.el
+++ b/lisp/gnus/nnimap.el
@@ -1163,6 +1163,12 @@ If LIMIT, first try to limit the search to the N last articles."
1163 ;; response. If they're successful, they're successful. 1163 ;; response. If they're successful, they're successful.
1164 (dolist (action actions) 1164 (dolist (action actions)
1165 (cl-destructuring-bind (range action marks) action 1165 (cl-destructuring-bind (range action marks) action
1166 ;; If we add/remove a tick mark, then do the same with the
1167 ;; readedness mark on the IMAP server. Other IMAP clients
1168 ;; can have marked messages without having them read, but
1169 ;; Gnus can't.
1170 (when (memq 'tick marks)
1171 (push 'read marks))
1166 (let ((flags (nnimap-marks-to-flags marks))) 1172 (let ((flags (nnimap-marks-to-flags marks)))
1167 (when flags 1173 (when flags
1168 (setq sequence (nnimap-send-command 1174 (setq sequence (nnimap-send-command
@@ -1492,8 +1498,9 @@ If LIMIT, first try to limit the search to the N last articles."
1492 1498
1493(defun nnimap-update-info (info marks) 1499(defun nnimap-update-info (info marks)
1494 (cl-destructuring-bind (existing flags high low uidnext start-article 1500 (cl-destructuring-bind (existing flags high low uidnext start-article
1495 permanent-flags uidvalidity 1501 permanent-flags uidvalidity
1496 vanished highestmodseq) marks 1502 vanished highestmodseq)
1503 marks
1497 (cond 1504 (cond
1498 ;; Ignore groups with no UIDNEXT/marks. This happens for 1505 ;; Ignore groups with no UIDNEXT/marks. This happens for
1499 ;; completely empty groups. 1506 ;; completely empty groups.