aboutsummaryrefslogtreecommitdiffstats
path: root/lisp/gnus/gnus-sum.el
diff options
context:
space:
mode:
authorLars Magne Ingebrigtsen <[email protected]>2010-11-26 02:11:40 +0000
committerKatsumi Yamaoka <[email protected]>2010-11-26 02:11:40 +0000
commit5f285722b63bc4a5f67c03a5bffb659ef65e7a14 (patch)
tree10c4532473f35fa24a588f642c5f8f67cffb80ea /lisp/gnus/gnus-sum.el
parent17dd22813f2fbf929a6e8e75966d097a6f4a2334 (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.el23
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.