(defconst gnus-maintainer "Lars Magne Ingebrigtsen <larsi@ifi.uio.no>"
"The mail address of the Gnus maintainer.")
-(defconst gnus-version "(ding) Gnus v0.41"
+(defconst gnus-version "(ding) Gnus v0.42"
"Version number for this version of Gnus.")
(defvar gnus-info-nodes
result)
(if (null numbers)
nil
- (while numbers
- (cond ((= last (car numbers)) nil) ;Omit duplicated number
- ((= (1+ last) (car numbers)) ;Still in sequence
- (setq last (car numbers)))
- (t ;End of one sequence
- (setq result
- (cons (if (= first last) first (cons first last)) result))
- (setq first (car numbers))
- (setq last (car numbers))))
- (setq numbers (cdr numbers)))
- (if (and (not always-list) (null result))
- (if (= first last) first (cons first last))
- (nreverse (cons (if (= first last) first (cons first last))
- result))))))
+ (if (not (listp (cdr numbers)))
+ numbers
+ (while numbers
+ (cond ((= last (car numbers)) nil) ;Omit duplicated number
+ ((= (1+ last) (car numbers)) ;Still in sequence
+ (setq last (car numbers)))
+ (t ;End of one sequence
+ (setq result
+ (cons (if (= first last) first (cons first last)) result))
+ (setq first (car numbers))
+ (setq last (car numbers))))
+ (setq numbers (cdr numbers)))
+ (if (and (not always-list) (null result))
+ (if (= first last) first (cons first last))
+ (nreverse (cons (if (= first last) first (cons first last))
+ result)))))))
(defalias 'gnus-uncompress-sequence 'gnus-uncompress-range)
(defun gnus-uncompress-range (ranges)
()
(while marked
(or (eq 'score (car (car marked)))
+ (eq 'bookmark (car (car marked)))
(not (or (atom (cdr (cdr (car marked))))
(not (atom (car (cdr (car marked)))))))
(setcdr (car marked)
()
(while marked
(or (eq 'score (car (car marked)))
+ (eq 'bookmark (car (car marked)))
(setcdr (car marked)
(gnus-compress-sequence (sort (cdr (car marked)) '<) t)))
(setq marked (cdr marked))))
((eq 'killed (car prev))
;; Articles that have been through the kill process are
;; to be a subset of active articles.
- (while (and m (< (cdr (car m)) (car active)))
+ (while (and m (< (or (and (numberp (car m)) (car m))
+ (cdr (car m)))
+ (car active)))
(setcdr prev (cdr m))
(setq m (cdr m)))
- (if (and m (< (car (car m)) (car active)))
- (setcar (car m) (car active))))
+ (if (and m (< (or (and (numberp (car m)) (car m))
+ (car (car m)))
+ (car active)))
+ (setcar (and (numberp (car m)) m (car m)) (car active))))
((or (eq 'reply (car marked)) (eq 'expire (car marked)))
;; The replied and expirable articles have to be articles
;; that are active.
(setq gnus-newsgroup-unselected
(sort gnus-newsgroup-unselected '<)))
(setq gnus-newsgroup-unreads
- (sort gnus-newsgroup-unreads '<))))))
+ (sort gnus-newsgroup-unreads '<))) t)))
(or (listp (cdr gnus-newsgroup-killed))
(setq gnus-newsgroup-killed (list gnus-newsgroup-killed)))
(let ((updated nil)
()
(while marked
(or (eq 'score (car (car marked)))
+ (eq 'bookmark (car (car marked)))
(setcdr (car marked) (gnus-uncompress-range (cdr (car marked)))))
(setq marked (cdr marked))))
(setq newsrc (cdr newsrc)))))
()
(while marked
(or (eq 'score (car (car marked)))
+ (eq 'bookmark (car (car marked)))
(setcdr (car marked)
(gnus-compress-sequence (sort (cdr (car marked)) '<) t)))
(setq marked (cdr marked))))