diff options
author | Dmitry Gutov <dgutov@yandex.ru> | 2020-05-16 00:06:39 +0300 |
---|---|---|
committer | Dmitry Gutov <dgutov@yandex.ru> | 2020-05-16 00:06:55 +0300 |
commit | 4307a84fd8cb57934f45ee4450c91c08bb86b4a3 (patch) | |
tree | 9e4c3cdc534c6bbab87a6c168851b795ab3a9001 /lisp/progmodes/project.el | |
parent | 66cbe8b946bf83ab19c0d9a7b9fc03e951ffd5b6 (diff) | |
download | emacs-4307a84fd8cb57934f45ee4450c91c08bb86b4a3.tar.gz emacs-4307a84fd8cb57934f45ee4450c91c08bb86b4a3.tar.bz2 emacs-4307a84fd8cb57934f45ee4450c91c08bb86b4a3.zip |
Fix submodules, second try
* lisp/progmodes/project.el (project-try-vc):
Call the backend directly instead of binding default-directory.
Diffstat (limited to 'lisp/progmodes/project.el')
-rw-r--r-- | lisp/progmodes/project.el | 8 |
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'.") ('Git ;; Don't stop at submodule boundary. (or (vc-file-getprop dir 'project-git-root) - (let* ((default-directory dir) - (root (vc-root-dir)) + (let* ((root (vc-call-backend backend 'root dir)) (gitfile (expand-file-name ".git" root))) (vc-file-setprop dir 'project-git-root @@ -287,9 +286,8 @@ backend implementation of `project-external-roots'.") (goto-char (point-min)) (looking-at "gitdir: [./]+/\.git/modules/")) (let* ((parent (file-name-directory - (directory-file-name root))) - (default-directory parent)) - (vc-root-dir))) + (directory-file-name root)))) + (vc-call-backend backend 'root parent))) (t root))) ))) ('nil nil) |