Mercurial > hg > xemacs-beta
diff lisp/gnus/nnfolder.el @ 114:8619ce7e4c50 r20-1b9
Import from CVS: tag r20-1b9
author | cvs |
---|---|
date | Mon, 13 Aug 2007 09:21:54 +0200 |
parents | 48d667d6f17f |
children | 9f59509498e1 |
line wrap: on
line diff
--- a/lisp/gnus/nnfolder.el Mon Aug 13 09:20:50 2007 +0200 +++ b/lisp/gnus/nnfolder.el Mon Aug 13 09:21:54 2007 +0200 @@ -225,7 +225,7 @@ (let ((bufs nnfolder-buffer-alist)) (save-excursion (while bufs - (if (not (buffer-name (nth 1 (car bufs)))) + (if (not (buffer-live-p (nth 1 (car bufs)))) (setq nnfolder-buffer-alist (delq (car bufs) nnfolder-buffer-alist)) (set-buffer (nth 1 (car bufs))) @@ -246,7 +246,8 @@ (equal group nnfolder-current-group)) (let ((inf (assoc group nnfolder-buffer-alist))) (when inf - (when nnfolder-current-group + (when (and nnfolder-current-group + nnfolder-current-buffer) (push (list nnfolder-current-group nnfolder-current-buffer) nnfolder-buffer-alist)) (setq nnfolder-buffer-alist @@ -374,7 +375,8 @@ (forward-line -1) (while (re-search-backward (concat "^" nnfolder-article-marker) nil t) (delete-region (point) (progn (forward-line 1) (point)))) - (nnmail-cache-insert (nnmail-fetch-field "message-id")) + (when nnmail-cache-accepted-message-ids + (nnmail-cache-insert (nnmail-fetch-field "message-id"))) (setq result (car (nnfolder-save-mail (if (stringp group) @@ -385,7 +387,8 @@ (save-excursion (nnfolder-possibly-change-folder (or (caar art-group) group)) (nnfolder-save-buffer) - (nnmail-cache-close)))) + (when nnmail-cache-accepted-message-ids + (nnmail-cache-close))))) (nnmail-save-active nnfolder-group-alist nnfolder-active-file) (unless result (nnheader-report 'nnfolder "Couldn't store article")) @@ -644,7 +647,8 @@ (let ((delim (concat "^" message-unix-mail-delimiter)) (marker (concat "\n" nnfolder-article-marker)) (number "[0-9]+") - (active (cadr (assoc group nnfolder-group-alist))) + (active (or (cadr (assoc group nnfolder-group-alist)) + (cons 1 0))) (scantime (assoc group nnfolder-scantime-alist)) (minid (lsh -1 -1)) maxid start end newscantime @@ -677,10 +681,8 @@ (when (not (or nnfolder-distrust-mbox (< maxid 2))) (goto-char (point-max)) - (if (not (re-search-backward marker nil t)) - (goto-char (point-min)) - (when (not (nnmail-search-unix-mail-delim)) - (goto-char (point-min))))) + (unless (re-search-backward marker nil t) + (goto-char (point-min)))) ;; Keep track of the active number on our own, and insert it back ;; into the active list when we're done. Also, prime the pump to