Subject: bug#5456: vc-hg-state does not search hg in vc-path

From: Stephan Bergmann <[email-masked]>
Date: Fri, 22 Jan 2010 23:05:58 +0100

At least in 23.1, vc-hg-state (and vc-hg-working-revision) in vc-hg.el call "hg" without making sure that it is being searched for in vc-path (as is done in vc-dispatcher.el by extending exec-path).  What fixed it for me (on recent trunk) is

---8<---
=== modified file 'lisp/vc-hg.el'
--- lisp/vc-hg.el	2010-01-13 08:35:10 +0000
+++ lisp/vc-hg.el	2010-01-22 21:46:14 +0000
@@ -169,7 +169,8 @@
                       ;; Ignore all errors.
 		      (let ((process-environment
 			     ;; Avoid localization of messages so we can parse the output.
-			     (append (list "TERM=dumb" "LANGUAGE=C" "HGRC=") process-environment)))
+			     (append (list "TERM=dumb" "LANGUAGE=C" "HGRC=") process-environment))
+                            (exec-path (append vc-path exec-path)))
 
 		      (process-file
                        "hg" nil t nil
@@ -205,7 +206,8 @@
 		      (let ((process-environment
 			     ;; Avoid localization of messages so we can parse the output.
 			     (append (list "TERM=dumb" "LANGUAGE=C" "HGRC=")
-				     process-environment)))
+				     process-environment))
+                            (exec-path (append vc-path exec-path)))
 			;; Ignore all errors.
 			(process-file
 			 "hg" nil t nil

---8<---

-Stephan