;;; nnml.el --- mail spool access for Gnus
-;; Copyright (C) 1995-2013 Free Software Foundation, Inc.
+;; Copyright (C) 1995-2015 Free Software Foundation, Inc.
;; Authors: Didier Verna <didier@xemacs.org> (adding compaction)
;; Simon Josefsson <simon@josefsson.org>
(> number nnmail-large-newsgroup)
(zerop (% count 20))
(nnheader-message 6 "nnml: Receiving headers... %d%%"
- (/ (* count 100) number))))
+ (floor (* count 100.0) number))))
(and (numberp nnmail-large-newsgroup)
(> number nnmail-large-newsgroup)
(max (1+ (- (cdr active) (car active))) 0)
(car active) (cdr active) group)))))))
+(deffoo nnml-retrieve-groups (groups &optional server)
+ (when nnml-get-new-mail
+ (if (nnmail-get-new-mail-per-group)
+ (dolist (group groups)
+ (nnml-request-scan group server))
+ (nnml-request-scan nil server)))
+ (with-current-buffer nntp-server-buffer
+ (erase-buffer)
+ (dolist (group groups)
+ (let* ((entry (assoc group nnml-group-alist))
+ (active (nth 1 entry)))
+ (if (consp active)
+ (insert (format "211 %d %d %d %s\n"
+ (max (1+ (- (cdr active) (car active))) 0)
+ (car active) (cdr active) group))))))
+ 'group)
+
(deffoo nnml-request-scan (&optional group server)
(setq nnml-article-file-alist nil)
(nnml-possibly-change-directory group server)
- (nnmail-get-new-mail 'nnml 'nnml-save-incremental-nov nnml-directory group))
+ (cond
+ (group
+ (nnmail-get-new-mail 'nnml 'nnml-save-incremental-nov nnml-directory group))
+ ((nnmail-get-new-mail-per-group)
+ (nnml-request-list)
+ (dolist (entry nnml-group-alist)
+ (nnml-request-scan (car entry) server)))
+ (t
+ (nnmail-get-new-mail 'nnml 'nnml-save-incremental-nov nnml-directory nil))))
(deffoo nnml-close-group (group &optional server)
(setq nnml-article-file-alist nil)