]> git.eshelyaron.com Git - emacs.git/commitdiff
Avoid calling vc backend if 'vc-display-status' is nil
authorAndy Moreton <andrewjmoreton@gmail.com>
Fri, 20 Jul 2018 16:45:09 +0000 (17:45 +0100)
committerEli Zaretskii <eliz@gnu.org>
Sat, 11 Aug 2018 10:04:06 +0000 (13:04 +0300)
* lisp/vc/vc-hooks.el (vc-mode-line): Avoid calling VC backend if
'vc-display-status' is nil.  (Bug#32225)

lisp/vc/vc-hooks.el

index 55c0132bf2b4ee9706e135cdd2c299f7db9bad14..f1b622b54a9ae594060fd178df960df97ccbef91 100644 (file)
@@ -692,24 +692,26 @@ visiting FILE.
 If BACKEND is passed use it as the VC backend when computing the result."
   (interactive (list buffer-file-name))
   (setq backend (or backend (vc-backend file)))
-  (if (not backend)
-      (setq vc-mode nil)
+  (cond
+   ((not backend)
+    (setq vc-mode nil))
+   ((null vc-display-status)
+    (setq vc-mode (concat " " (symbol-name backend))))
+   (t
     (let* ((ml-string (vc-call-backend backend 'mode-line-string file))
           (ml-echo (get-text-property 0 'help-echo ml-string)))
       (setq vc-mode
            (concat
             " "
-            (if (null vc-display-status)
-                (symbol-name backend)
-              (propertize
-               ml-string
-               'mouse-face 'mode-line-highlight
-               'help-echo
-               (concat (or ml-echo
-                           (format "File under the %s version control system"
-                                   backend))
-                       "\nmouse-1: Version Control menu")
-               'local-map vc-mode-line-map)))))
+            (propertize
+             ml-string
+             'mouse-face 'mode-line-highlight
+             'help-echo
+             (concat (or ml-echo
+                         (format "File under the %s version control system"
+                                 backend))
+                     "\nmouse-1: Version Control menu")
+             'local-map vc-mode-line-map))))
     ;; If the user is root, and the file is not owner-writable,
     ;; then pretend that we can't write it
     ;; even though we can (because root can write anything).
@@ -718,7 +720,7 @@ If BACKEND is passed use it as the VC backend when computing the result."
         (not buffer-read-only)
         (zerop (user-real-uid))
         (zerop (logand (file-modes buffer-file-name) 128))
-        (setq buffer-read-only t)))
+        (setq buffer-read-only t))))
   (force-mode-line-update)
   backend)