Function: gnus-cache-change-buffer

gnus-cache-change-buffer is a byte-compiled function defined in gnus-cache.el.gz.

Signature

(gnus-cache-change-buffer GROUP)

Source Code

;; Defined in /usr/src/emacs/lisp/gnus/gnus-cache.el.gz
;;; Internal functions.

(defun gnus-cache-change-buffer (group)
  (and gnus-cache-buffer
       ;; See if the current group's overview cache has been loaded.
       (or (string= group (car gnus-cache-buffer))
	   ;; Another overview cache is current, save it.
	   (gnus-cache-save-buffers)))
  ;; if gnus-cache buffer is nil, create it
  (unless gnus-cache-buffer
    ;; Create cache buffer
    (save-excursion
      (setq gnus-cache-buffer
	    (cons group
		  (set-buffer (gnus-get-buffer-create
			       " *gnus-cache-overview*"))))
      ;; Insert the contents of this group's cache overview.
      (erase-buffer)
      (let ((file (gnus-cache-file-name group ".overview"))
	    (file-name-coding-system nnmail-pathname-coding-system))
	(when (file-exists-p file)
	  (nnheader-insert-file-contents file)))
      ;; We have a fresh (empty/just loaded) buffer,
      ;; mark it as unmodified to save a redundant write later.
      (set-buffer-modified-p nil))))