summaryrefslogtreecommitdiff
path: root/lisp/vc.el
diff options
context:
space:
mode:
authorPaul Eggert <eggert@twinsun.com>1993-09-27 04:36:31 +0000
committerPaul Eggert <eggert@twinsun.com>1993-09-27 04:36:31 +0000
commitdeb9ebc6cb61c5f9e99da38810e16b911cd3917e (patch)
treeea2f53d2ebec11d287f3d8dc4424e86a55f53b5c /lisp/vc.el
parent2cc27dd3d24573bbd673768c2182a73be599b313 (diff)
downloademacs-deb9ebc6cb61c5f9e99da38810e16b911cd3917e.tar.gz
(vc-find-binary): Fix bug; it always claimed success.
Diffstat (limited to 'lisp/vc.el')
-rw-r--r--lisp/vc.el23
1 files changed, 13 insertions, 10 deletions
diff --git a/lisp/vc.el b/lisp/vc.el
index 7795850016c..060d64794eb 100644
--- a/lisp/vc.el
+++ b/lisp/vc.el
@@ -164,16 +164,19 @@ is sensitive to blank lines.")
(defun vc-find-binary (name)
"Look for a command anywhere on the subprocess-command search path."
(or (cdr (assoc name vc-binary-assoc))
- (let ((full nil))
- (catch 'found
- (mapcar
- (function (lambda (s)
- (if (and s (file-exists-p (setq full (concat s "/" name))))
- (throw 'found nil))))
- exec-path))
- (if full
- (setq vc-binary-assoc (cons (cons name full) vc-binary-assoc)))
- full)))
+ (catch 'found
+ (mapcar
+ (function
+ (lambda (s)
+ (if s
+ (let ((full (concat s "/" name)))
+ (if (file-executable-p full)
+ (progn
+ (setq vc-binary-assoc
+ (cons (cons name full) vc-binary-assoc))
+ (throw 'found full)))))))
+ exec-path)
+ nil)))
(defun vc-do-command (okstatus command file &rest flags)
"Execute a version-control command, notifying user and checking for errors.