diff options
author | Lars Magne Ingebrigtsen <[email protected]> | 2010-11-26 02:11:40 +0000 |
---|---|---|
committer | Katsumi Yamaoka <[email protected]> | 2010-11-26 02:11:40 +0000 |
commit | 5f285722b63bc4a5f67c03a5bffb659ef65e7a14 (patch) | |
tree | 10c4532473f35fa24a588f642c5f8f67cffb80ea /lisp/gnus/gnus-sum.el | |
parent | 17dd22813f2fbf929a6e8e75966d097a6f4a2334 (diff) |
nnml.el, nnfolder.el, nntp.el (*-request-set-mark): Extend syntax with 'set.
nnheader.el, nntp.el, nnfolder.el, nnml.el (*-request-set-mark): Refactor out nnheader-update-marks-actions and use it throughout.
nnmaildir.el (nnmaildir-request-set-mark): Be explicit about 'set.
gnus-sum.el (gnus-summary-push-marks-to-backend): Use 'set instead of 'add and 'delete to set backend marks.
Diffstat (limited to 'lisp/gnus/gnus-sum.el')
-rw-r--r-- | lisp/gnus/gnus-sum.el | 23 |
1 files changed, 9 insertions, 14 deletions
diff --git a/lisp/gnus/gnus-sum.el b/lisp/gnus/gnus-sum.el index f6c8d0f8f4..2d679dab24 100644 --- a/lisp/gnus/gnus-sum.el +++ b/lisp/gnus/gnus-sum.el @@ -9948,23 +9948,18 @@ ACTION can be either `move' (the default), `crosspost' or `copy'." (gnus-set-mode-line 'summary))) (defun gnus-summary-push-marks-to-backend (article) - (let ((add nil) - (delete nil) + (let ((set nil) (marks gnus-article-mark-lists)) - (if (memq article gnus-newsgroup-unreads) - (push 'read add) - (push 'read delete)) + (when (memq article gnus-newsgroup-unreads) + (push 'read set)) (while marks - (when (eq (gnus-article-mark-to-type (cdar marks)) 'list) - (if (memq article (symbol-value - (intern (format "gnus-newsgroup-%s" - (caar marks))))) - (push (cdar marks) add) - (push (cdar marks) delete))) + (when (and (eq (gnus-article-mark-to-type (cdar marks)) 'list) + (memq article (symbol-value + (intern (format "gnus-newsgroup-%s" + (caar marks)))))) + (push (cdar marks) set)) (pop marks)) - (gnus-request-set-mark gnus-newsgroup-name - `(((,article) add ,add) - ((,article) del ,delete))))) + (gnus-request-set-mark gnus-newsgroup-name `(((,article) set ,set))))) (defun gnus-summary-copy-article (&optional n to-newsgroup select-method) "Copy the current article to some other group. |