aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDmitry Gutov2020-05-16 00:06:39 +0300
committerDmitry Gutov2020-05-16 00:06:55 +0300
commit4307a84fd8cb57934f45ee4450c91c08bb86b4a3 (patch)
tree9e4c3cdc534c6bbab87a6c168851b795ab3a9001
parent66cbe8b946bf83ab19c0d9a7b9fc03e951ffd5b6 (diff)
downloademacs-4307a84fd8cb57934f45ee4450c91c08bb86b4a3.tar.gz
emacs-4307a84fd8cb57934f45ee4450c91c08bb86b4a3.zip
Fix submodules, second try
* lisp/progmodes/project.el (project-try-vc): Call the backend directly instead of binding default-directory.
-rw-r--r--lisp/progmodes/project.el8
1 files changed, 3 insertions, 5 deletions
diff --git a/lisp/progmodes/project.el b/lisp/progmodes/project.el
index faa60d123fb..0ce2786a4dd 100644
--- a/lisp/progmodes/project.el
+++ b/lisp/progmodes/project.el
@@ -274,8 +274,7 @@ backend implementation of `project-external-roots'.")
274 ('Git 274 ('Git
275 ;; Don't stop at submodule boundary. 275 ;; Don't stop at submodule boundary.
276 (or (vc-file-getprop dir 'project-git-root) 276 (or (vc-file-getprop dir 'project-git-root)
277 (let* ((default-directory dir) 277 (let* ((root (vc-call-backend backend 'root dir))
278 (root (vc-root-dir))
279 (gitfile (expand-file-name ".git" root))) 278 (gitfile (expand-file-name ".git" root)))
280 (vc-file-setprop 279 (vc-file-setprop
281 dir 'project-git-root 280 dir 'project-git-root
@@ -287,9 +286,8 @@ backend implementation of `project-external-roots'.")
287 (goto-char (point-min)) 286 (goto-char (point-min))
288 (looking-at "gitdir: [./]+/\.git/modules/")) 287 (looking-at "gitdir: [./]+/\.git/modules/"))
289 (let* ((parent (file-name-directory 288 (let* ((parent (file-name-directory
290 (directory-file-name root))) 289 (directory-file-name root))))
291 (default-directory parent)) 290 (vc-call-backend backend 'root parent)))
292 (vc-root-dir)))
293 (t root))) 291 (t root)))
294 ))) 292 )))
295 ('nil nil) 293 ('nil nil)