Function: files--buffers-needing-to-be-saved

files--buffers-needing-to-be-saved is a byte-compiled function defined in files.el.gz.

Signature

(files--buffers-needing-to-be-saved PRED)

Documentation

Return a list of buffers to save according to PRED.

See save-some-buffers for PRED values.

Source Code

;; Defined in /usr/src/emacs/lisp/files.el.gz
(defun files--buffers-needing-to-be-saved (pred)
  "Return a list of buffers to save according to PRED.
See `save-some-buffers' for PRED values."
  (let ((buffers
         (mapcar (lambda (buffer)
                   (if
                       ;; Note that killing some buffers may kill others via
                       ;; hooks (e.g. Rmail and its viewing buffer).
                       (and (buffer-live-p buffer)
                            (buffer-modified-p buffer)
                            (not (buffer-base-buffer buffer))
                            (or
                             (buffer-file-name buffer)
                             (with-current-buffer buffer
                               (or (eq buffer-offer-save 'always)
                                   (and pred buffer-offer-save
                                        (> (buffer-size) 0)))))
                            (or (not (functionp pred))
                                (with-current-buffer buffer
                                  (funcall pred))))
                       buffer))
                 (buffer-list))))
    (delq nil buffers)))