Function: gnus-cut-thread
gnus-cut-thread is a byte-compiled function defined in gnus-sum.el.gz.
Signature
(gnus-cut-thread THREAD)
Documentation
Go forwards in the thread until we find an article that we want to display.
Source Code
;; Defined in /usr/src/emacs/lisp/gnus/gnus-sum.el.gz
(defsubst gnus-cut-thread (thread)
"Go forwards in the thread until we find an article that we want to display."
(when (or (eq gnus-fetch-old-headers 'some)
(eq gnus-fetch-old-headers 'invisible)
(numberp gnus-fetch-old-headers)
(eq gnus-build-sparse-threads 'some)
(eq gnus-build-sparse-threads 'more))
;; Deal with old-fetched headers and sparse threads.
(while (and
thread
(or
(gnus-summary-article-sparse-p (mail-header-number (car thread)))
(gnus-summary-article-ancient-p
(mail-header-number (car thread))))
(if (or (<= (length (cdr thread)) 1)
(eq gnus-fetch-old-headers 'invisible))
(setq gnus-newsgroup-limit
(delq (mail-header-number (car thread))
gnus-newsgroup-limit)
thread (cadr thread))
(when (gnus-invisible-cut-children (cdr thread))
(let ((th (cdr thread)))
(while th
(if (memq (mail-header-number (caar th))
gnus-newsgroup-limit)
(setq thread (car th)
th nil)
(setq th (cdr th))))))))))
thread)