X-Git-Url: https://cgit.sxemacs.org/?a=blobdiff_plain;f=lisp%2Fnnml.el;h=3a6f5291ea2103972e4739fb971e32a172639150;hb=HEAD;hp=600a0d21e3c5ea020993ce205daa8040119ffdf2;hpb=a10e061d0e6d4792608c61659d34a0c770c1129b;p=gnus diff --git a/lisp/nnml.el b/lisp/nnml.el index 600a0d21e..3a6f5291e 100644 --- a/lisp/nnml.el +++ b/lisp/nnml.el @@ -1,7 +1,6 @@ ;;; nnml.el --- mail spool access for Gnus -;; Copyright (C) 1995-2012 Free Software -;; Foundation, Inc. +;; Copyright (C) 1995-2016 Free Software Foundation, Inc. ;; Authors: Didier Verna (adding compaction) ;; Simon Josefsson @@ -179,7 +178,7 @@ non-nil.") (> 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) @@ -272,7 +271,15 @@ non-nil.") (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) @@ -919,7 +926,7 @@ Unless no-active is non-nil, update the active file too." (let* ((dir (file-name-as-directory dir)) (nov (concat dir nnml-nov-file-name)) (nov-buffer (get-buffer-create " *nov*")) - chars file headers) + chars headers) (with-current-buffer nov-buffer ;; Init the nov buffer. (buffer-disable-undo) @@ -1095,7 +1102,10 @@ Use the nov database for the current group if available." (concat group ":" new-number-string))) ;; Save to the new file: (nnmail-write-region (point-min) (point-max) newfile)) - (funcall nnmail-delete-file-function oldfile)) + (condition-case () + (funcall nnmail-delete-file-function oldfile) + (file-error + (message "Couldn't delete %s" oldfile)))) ;; 2/ Update all marks for this article: ;; #### NOTE: it is possible that the new article number ;; #### already belongs to a range, whereas the corresponding