summaryrefslogtreecommitdiff
path: root/lisp/gnus/gnus-sum.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/gnus/gnus-sum.el')
-rw-r--r--lisp/gnus/gnus-sum.el11
1 files changed, 7 insertions, 4 deletions
diff --git a/lisp/gnus/gnus-sum.el b/lisp/gnus/gnus-sum.el
index 10aa4e12dcf..e3ae1d7f528 100644
--- a/lisp/gnus/gnus-sum.el
+++ b/lisp/gnus/gnus-sum.el
@@ -6070,12 +6070,15 @@ If SELECT-ARTICLES, only select those articles from GROUP."
(let* ((old (cdr (assq (cdr type) (gnus-info-marks info))))
;; Don't do anything about marks for articles we
;; didn't actually get any headers for.
- (existing (gnus-compress-sequence gnus-newsgroup-articles))
(del
- (gnus-remove-from-range (gnus-copy-sequence old) list))
+ (gnus-list-range-intersection
+ gnus-newsgroup-articles
+ (gnus-remove-from-range (gnus-copy-sequence old) list)))
(add
- (gnus-remove-from-range
- (gnus-copy-sequence list) old)))
+ (gnus-list-range-intersection
+ gnus-newsgroup-articles
+ (gnus-remove-from-range
+ (gnus-copy-sequence list) old))))
(when add
(push (list add 'add (list (cdr type))) delta-marks))
(when del