mercurial/posix.py
changeset 15056 8413916df816
parent 15011 5e44e4b3a0a3
child 15353 ab600a25dfc0
--- a/mercurial/posix.py	Thu Aug 25 16:21:53 2011 -0500
+++ b/mercurial/posix.py	Wed Aug 24 05:42:41 2011 -0400
@@ -256,7 +256,9 @@
     for path in os.environ.get('PATH', '').split(os.pathsep):
         executable = findexisting(os.path.join(path, command))
         if executable is not None:
-            return executable
+            st = os.stat(executable)
+            if (st.st_mode & (stat.S_IXUSR | stat.S_IXGRP | stat.S_IXOTH)):
+                return executable
     return None
 
 def setsignalhandler():