]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix previous commit regarding revert-buffer-function
authorSean Whitton <spwhitton@spwhitton.name>
Fri, 29 Jan 2021 07:18:52 +0000 (08:18 +0100)
committerLars Ingebrigtsen <larsi@gnus.org>
Fri, 29 Jan 2021 07:18:52 +0000 (08:18 +0100)
* simple.el (shell-command, shell-command-on-region): Set
revert-buffer-function buffer-locally, not globally.  Also, avoid an
unnecessary call to (current-buffer) by taking advantage of the
closure (bug#46151).

lisp/simple.el

index 64ee04213560272bccb9879e0d33e2903d2b7fea..742fc5004dc55e7dda67c1aa945894f470eaac1f 100644 (file)
@@ -3991,9 +3991,9 @@ impose the use of a shell (with its need to quote arguments)."
                          (start-process-shell-command "Shell" buffer command)))
                  (setq mode-line-process '(":%s"))
                   (shell-mode)
-                  (setq revert-buffer-function
-                        (lambda (&rest _)
-                          (async-shell-command command (current-buffer))))
+                  (setq-local revert-buffer-function
+                              (lambda (&rest _)
+                                (async-shell-command command buffer)))
                   (set-process-sentinel proc #'shell-command-sentinel)
                  ;; Use the comint filter for proper handling of
                  ;; carriage motion (see comint-inhibit-carriage-motion).
@@ -4260,9 +4260,9 @@ characters."
                                              buffer))))
             ;; Report the output.
             (with-current-buffer buffer
-              (setq revert-buffer-function
-                    (lambda (&rest _)
-                      (shell-command command)))
+              (setq-local revert-buffer-function
+                          (lambda (&rest _)
+                            (shell-command command)))
               (setq mode-line-process
                     (cond ((null exit-status)
                            " - Error")