bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#39380: 26.3: Opening files in vc-dir-mode with differing root and wo


From: Dmitry Gutov
Subject: bug#39380: 26.3: Opening files in vc-dir-mode with differing root and working dir fails
Date: Wed, 5 Feb 2020 18:56:01 +0300
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.9.0

On 04.02.2020 19:04, Wolfgang Scherer wrote:
Reverting de76a167dc09dc695a5acebabb7ab354a6bf556e does not change anything for 
me.

I had to revert 06083cf41c473404d246de9b91a0116f38c5485f to restore the correct 
behavior:

Author: Dmitry Gutov<address@hidden>
Date:   Sat Jan 30 06:55:32 2016 +0300

     Don't pass DIR to 'hg status'
    * lisp/vc/vc-hg.el (vc-hg-dir-status-files):
     Don't pass DIR to 'hg status' (bug#22481).

Good catch, thank you. Could you try this patch?

diff --git a/lisp/vc/vc-hg.el b/lisp/vc/vc-hg.el
index c9a2cb412e..a91e1f5ad6 100644
--- a/lisp/vc/vc-hg.el
+++ b/lisp/vc/vc-hg.el
@@ -1352,14 +1352,14 @@ vc-hg-after-dir-status
 ;; Follows vc-exec-after.
 (declare-function vc-set-async-update "vc-dispatcher" (process-buffer))

-(defun vc-hg-dir-status-files (_dir files update-function)
+(defun vc-hg-dir-status-files (dir files update-function)
   ;; XXX: We can't pass DIR directly to 'hg status' because that
   ;; returns all ignored files if FILES is non-nil (bug#22481).
-  ;; If honoring DIR ever becomes important, try using '-I DIR/'.
-  (vc-hg-command (current-buffer) 'async files
-                 "status"
-                 (concat "-mardu" (if files "i"))
-                 "-C")
+  (let ((default-directory dir))
+    (vc-hg-command (current-buffer) 'async files
+                   "status" "re:" "-I" "."
+                   (concat "-mardu" (if files "i"))
+                   "-C"))
   (vc-run-delayed
     (vc-hg-after-dir-status update-function)))






reply via email to

[Prev in Thread] Current Thread [Next in Thread]