Function: nnmbox-request-expire-articles
nnmbox-request-expire-articles is a byte-compiled function defined in
nnmbox.el.gz.
Signature
(nnmbox-request-expire-articles ARTICLES NEWSGROUP &optional SERVER FORCE)
Source Code
;; Defined in /usr/src/emacs/lisp/gnus/nnmbox.el.gz
(deffoo nnmbox-request-expire-articles
(articles newsgroup &optional server force)
(nnmbox-possibly-change-newsgroup newsgroup server)
(let* ((is-old t)
rest)
(nnmail-activate 'nnmbox)
(with-current-buffer nnmbox-mbox-buffer
(while (and articles is-old)
(when (nnmbox-find-article (car articles))
(if (setq is-old
(nnmail-expired-article-p
newsgroup
(buffer-substring (point) (line-end-position))
force))
(progn
(unless (eq nnmail-expiry-target 'delete)
(with-temp-buffer
(nnmbox-request-article (car articles)
newsgroup server
(current-buffer))
(let ((nnml-current-directory nil))
(nnmail-expiry-target-group
nnmail-expiry-target newsgroup)))
(nnmbox-possibly-change-newsgroup newsgroup server))
(nnheader-message 5 "Deleting article %d in %s..."
(car articles) newsgroup)
(nnmbox-delete-mail))
(push (car articles) rest)))
(setq articles (cdr articles)))
(nnmbox-save-buffer)
;; Find the lowest active article in this group.
(let ((active (nth 1 (assoc newsgroup nnmbox-group-alist))))
(while (and (not (nnmbox-find-article (car active)))
(<= (car active) (cdr active)))
(setcar active (1+ (car active)))))
(nnmbox-save-active nnmbox-group-alist nnmbox-active-file)
(nconc rest articles))))