aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEli Zaretskii2022-02-17 15:26:37 +0200
committerEli Zaretskii2022-02-17 15:26:37 +0200
commita6b7bb2dfd8dd436a1d845e35bedf910405c918b (patch)
treef11a11cf1b829c80d679c44cc326acbe3227ee76
parent64eb2a5f8d3176c4e790c9bea9e753ba9bf9593b (diff)
downloademacs-a6b7bb2dfd8dd436a1d845e35bedf910405c918b.tar.gz
emacs-a6b7bb2dfd8dd436a1d845e35bedf910405c918b.zip
Speed up exiting "emacs -Q"
* lisp/files.el (files--buffers-needing-to-be-saved): Don't call functions from seq.el. Using seq.el has an annoying side-effect of slowing down "C-x C-c" from "emacs -Q" due to the need to load seq.el.
-rw-r--r--lisp/files.el37
1 files changed, 20 insertions, 17 deletions
diff --git a/lisp/files.el b/lisp/files.el
index b2792818e67..a0501cffa1a 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -5826,23 +5826,26 @@ of the directory that was default during command invocation."
5826(defun files--buffers-needing-to-be-saved (pred) 5826(defun files--buffers-needing-to-be-saved (pred)
5827 "Return a list of buffers to save according to PRED. 5827 "Return a list of buffers to save according to PRED.
5828See `save-some-buffers' for PRED values." 5828See `save-some-buffers' for PRED values."
5829 (seq-filter 5829 (let ((buffers
5830 (lambda (buffer) 5830 (mapcar (lambda (buffer)
5831 ;; Note that killing some buffers may kill others via 5831 (if
5832 ;; hooks (e.g. Rmail and its viewing buffer). 5832 ;; Note that killing some buffers may kill others via
5833 (and (buffer-live-p buffer) 5833 ;; hooks (e.g. Rmail and its viewing buffer).
5834 (buffer-modified-p buffer) 5834 (and (buffer-live-p buffer)
5835 (not (buffer-base-buffer buffer)) 5835 (buffer-modified-p buffer)
5836 (or 5836 (not (buffer-base-buffer buffer))
5837 (buffer-file-name buffer) 5837 (or
5838 (with-current-buffer buffer 5838 (buffer-file-name buffer)
5839 (or (eq buffer-offer-save 'always) 5839 (with-current-buffer buffer
5840 (and pred buffer-offer-save 5840 (or (eq buffer-offer-save 'always)
5841 (> (buffer-size) 0))))) 5841 (and pred buffer-offer-save
5842 (or (not (functionp pred)) 5842 (> (buffer-size) 0)))))
5843 (with-current-buffer buffer 5843 (or (not (functionp pred))
5844 (funcall pred))))) 5844 (with-current-buffer buffer
5845 (buffer-list))) 5845 (funcall pred))))
5846 buffer))
5847 (buffer-list))))
5848 (delq nil buffers)))
5846 5849
5847(defun save-some-buffers (&optional arg pred) 5850(defun save-some-buffers (&optional arg pred)
5848 "Save some modified file-visiting buffers. Asks user about each one. 5851 "Save some modified file-visiting buffers. Asks user about each one.