Function: nnmh-request-expire-articles
nnmh-request-expire-articles is a byte-compiled function defined in
nnmh.el.gz.
Signature
(nnmh-request-expire-articles ARTICLES NEWSGROUP &optional SERVER FORCE)
Source Code
;; Defined in /usr/src/emacs/lisp/gnus/nnmh.el.gz
(deffoo nnmh-request-expire-articles (articles newsgroup
&optional server force)
(nnmh-possibly-change-directory newsgroup server)
(let ((is-old t)
(dir nnmh-current-directory)
article rest mod-time)
(nnheader-init-server-buffer)
(while (and articles is-old)
(setq article (concat dir (int-to-string (car articles))))
(when (setq mod-time (file-attribute-modification-time
(file-attributes article)))
(if (and (nnmh-deletable-article-p newsgroup (car articles))
(setq is-old
(nnmail-expired-article-p newsgroup mod-time force)))
(progn
;; Allow a special target group. -- jcn
(unless (eq nnmail-expiry-target 'delete)
(with-temp-buffer
(nnmh-request-article (car articles)
newsgroup server (current-buffer))
(nnmail-expiry-target-group
nnmail-expiry-target newsgroup)))
(nnheader-message 5 "Deleting article %s in %s..."
article newsgroup)
(condition-case ()
(funcall nnmail-delete-file-function article)
(file-error
(nnheader-message 1 "Couldn't delete article %s in %s"
article newsgroup)
(push (car articles) rest))))
(push (car articles) rest)))
(setq articles (cdr articles)))
(nnheader-message 5 "")
(nconc rest articles)))