]> git.eshelyaron.com Git - emacs.git/commitdiff
Finish fix for Bug#21559
authorMichael Albinus <michael.albinus@gmx.de>
Sat, 29 Sep 2018 10:40:15 +0000 (12:40 +0200)
committerMichael Albinus <michael.albinus@gmx.de>
Sat, 29 Sep 2018 10:40:15 +0000 (12:40 +0200)
* lisp/vc/vc-git.el (vc-git--call):
If `revert-buffer-in-progress-p' flag is set, prepend
"GIT_OPTIONAL_LOCKS=0" to "process-environment".  (Bug#21559)

lisp/vc/vc-git.el

index 03afce517091cd025798f0c34339fbce42255016..4ea7ea5344208736e9bbf61ebec715e87b7d7b7f 100644 (file)
@@ -1628,8 +1628,15 @@ The difference to vc-do-command is that this function always invokes
          (or coding-system-for-read vc-git-log-output-coding-system))
        (coding-system-for-write
          (or coding-system-for-write vc-git-commits-coding-system))
-       (process-environment (cons "PAGER=" process-environment)))
-    (push "GIT_DIR" process-environment)
+       (process-environment
+        (append
+         `("GIT_DIR"
+           "PAGER="
+           ;; Avoid repository locking during background operations
+           ;; (bug#21559).
+           ,@(when revert-buffer-in-progress-p
+               '("GIT_OPTIONAL_LOCKS=0")))
+         process-environment)))
     (apply 'process-file vc-git-program nil buffer nil command args)))
 
 (defun vc-git--out-ok (command &rest args)