Mercurial > hg > xemacs-beta
comparison lisp/gnus/nnml.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 |
comparison
equal
deleted
inserted
replaced
113:2ec2fe4a4c89 | 114:8619ce7e4c50 |
---|---|
311 | 311 |
312 (deffoo nnml-request-accept-article (group &optional server last) | 312 (deffoo nnml-request-accept-article (group &optional server last) |
313 (nnml-possibly-change-directory group server) | 313 (nnml-possibly-change-directory group server) |
314 (nnmail-check-syntax) | 314 (nnmail-check-syntax) |
315 (let (result) | 315 (let (result) |
316 (nnmail-cache-insert (nnmail-fetch-field "message-id")) | 316 (when nnmail-cache-accepted-message-ids |
317 (nnmail-cache-insert (nnmail-fetch-field "message-id"))) | |
317 (if (stringp group) | 318 (if (stringp group) |
318 (and | 319 (and |
319 (nnmail-activate 'nnml) | 320 (nnmail-activate 'nnml) |
320 (setq result (car (nnml-save-mail | 321 (setq result (car (nnml-save-mail |
321 (list (cons group (nnml-active-number group)))))) | 322 (list (cons group (nnml-active-number group)))))) |
326 (nnmail-activate 'nnml) | 327 (nnmail-activate 'nnml) |
327 (setq result (car (nnml-save-mail | 328 (setq result (car (nnml-save-mail |
328 (nnmail-article-group 'nnml-active-number)))) | 329 (nnmail-article-group 'nnml-active-number)))) |
329 (when last | 330 (when last |
330 (nnmail-save-active nnml-group-alist nnml-active-file) | 331 (nnmail-save-active nnml-group-alist nnml-active-file) |
331 (nnmail-cache-close) | 332 (when nnmail-cache-accepted-message-ids |
333 (nnmail-cache-close)) | |
332 (nnml-save-nov)))) | 334 (nnml-save-nov)))) |
333 result)) | 335 result)) |
334 | 336 |
335 (deffoo nnml-request-replace-article (article group buffer) | 337 (deffoo nnml-request-replace-article (article group buffer) |
336 (nnml-possibly-change-directory group) | 338 (nnml-possibly-change-directory group) |
680 ;; numbers in empty groups. | 682 ;; numbers in empty groups. |
681 (nnmail-activate 'nnml) | 683 (nnmail-activate 'nnml) |
682 (nnml-open-server (or (nnoo-current-server 'nnml) "")) | 684 (nnml-open-server (or (nnoo-current-server 'nnml) "")) |
683 (setq nnml-directory (expand-file-name nnml-directory)) | 685 (setq nnml-directory (expand-file-name nnml-directory)) |
684 ;; Recurse down the directories. | 686 ;; Recurse down the directories. |
685 (nnml-generate-nov-databases-1 nnml-directory) | 687 (nnml-generate-nov-databases-1 nnml-directory nil t) |
686 ;; Save the active file. | 688 ;; Save the active file. |
687 (nnmail-save-active nnml-group-alist nnml-active-file)) | 689 (nnmail-save-active nnml-group-alist nnml-active-file)) |
688 | 690 |
689 (defun nnml-generate-nov-databases-1 (dir &optional seen) | 691 (defun nnml-generate-nov-databases-1 (dir &optional seen no-active) |
690 "Regenerate the NOV database in DIR." | 692 "Regenerate the NOV database in DIR." |
691 (interactive "DRegenerate NOV in: ") | 693 (interactive "DRegenerate NOV in: ") |
692 (setq dir (file-name-as-directory dir)) | 694 (setq dir (file-name-as-directory dir)) |
693 ;; Only scan this sub-tree if we haven't been here yet. | 695 ;; Only scan this sub-tree if we haven't been here yet. |
694 (unless (member (file-truename dir) seen) | 696 (unless (member (file-truename dir) seen) |
704 (let ((files (sort (nnheader-article-to-file-alist dir) | 706 (let ((files (sort (nnheader-article-to-file-alist dir) |
705 (lambda (a b) (< (car a) (car b)))))) | 707 (lambda (a b) (< (car a) (car b)))))) |
706 (when files | 708 (when files |
707 (funcall nnml-generate-active-function dir) | 709 (funcall nnml-generate-active-function dir) |
708 ;; Generate the nov file. | 710 ;; Generate the nov file. |
709 (nnml-generate-nov-file dir files))))) | 711 (nnml-generate-nov-file dir files) |
712 (unless no-active | |
713 (nnmail-save-active nnml-group-alist nnml-active-file)))))) | |
710 | 714 |
711 (defvar files) | 715 (defvar files) |
712 (defun nnml-generate-active-info (dir) | 716 (defun nnml-generate-active-info (dir) |
713 ;; Update the active info for this group. | 717 ;; Update the active info for this group. |
714 (let ((group (nnheader-file-to-group | 718 (let ((group (nnheader-file-to-group |