# HG changeset patch # User Robert Jones # Date 1314178961 14400 # Node ID 8413916df8167ca71d82284056fdf171be0694af # Parent 7c03e3b1b858e078880abc872a36dd8d4d2f93c7 posix: check for executable bits on files identified by findexe function diff -r 7c03e3b1b858 -r 8413916df816 mercurial/posix.py --- 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():