mercurial/util.py
changeset 4482 62019c4427e3
parent 4434 439b1c35348a
child 4508 0026ccc2bf23
equal deleted inserted replaced
4481:1b5b98837bb5 4482:62019c4427e3
  1085             p_name = os.path.join(p, name)
  1085             p_name = os.path.join(p, name)
  1086             if os.path.exists(p_name):
  1086             if os.path.exists(p_name):
  1087                 return p_name
  1087                 return p_name
  1088         return default
  1088         return default
  1089 
  1089 
       
  1090 def find_exe(name, default=None):
       
  1091     '''find path of an executable.
       
  1092     if name contains a path component, return it as is.  otherwise,
       
  1093     use normal executable search path.'''
       
  1094 
       
  1095     if os.sep in name:
       
  1096         # don't check the executable bit.  if the file isn't
       
  1097         # executable, whoever tries to actually run it will give a
       
  1098         # much more useful error message.
       
  1099         return name
       
  1100     return find_in_path(name, os.environ.get('PATH', ''), default=default)
       
  1101 
  1090 def _buildencodefun():
  1102 def _buildencodefun():
  1091     e = '_'
  1103     e = '_'
  1092     win_reserved = [ord(x) for x in '\\:*?"<>|']
  1104     win_reserved = [ord(x) for x in '\\:*?"<>|']
  1093     cmap = dict([ (chr(x), chr(x)) for x in xrange(127) ])
  1105     cmap = dict([ (chr(x), chr(x)) for x in xrange(127) ])
  1094     for x in (range(32) + range(126, 256) + win_reserved):
  1106     for x in (range(32) + range(126, 256) + win_reserved):