mercurial/templater.py
changeset 45320 4aa484efc926
parent 45319 6e6fe826ba69
child 45321 735756ecda8c
equal deleted inserted replaced
45319:6e6fe826ba69 45320:4aa484efc926
  1093     '''
  1093     '''
  1094     if templatepath is None:
  1094     if templatepath is None:
  1095         templatepath = templatedir()
  1095         templatepath = templatedir()
  1096     if templatepath is not None or os.path.isabs(name):
  1096     if templatepath is not None or os.path.isabs(name):
  1097         f = os.path.join(templatepath, name)
  1097         f = os.path.join(templatepath, name)
  1098         try:
  1098         return f, open(f, mode='rb')
  1099             return f, open(f, mode='rb')
       
  1100         except EnvironmentError:
       
  1101             return None, None
       
  1102     else:
  1099     else:
  1103         name_parts = pycompat.sysstr(name).split('/')
  1100         name_parts = pycompat.sysstr(name).split('/')
  1104         package_name = '.'.join(['mercurial', 'templates'] + name_parts[:-1])
  1101         package_name = '.'.join(['mercurial', 'templates'] + name_parts[:-1])
  1105         try:
  1102         return (
  1106             return (
  1103             name,
  1107                 name,
  1104             resourceutil.open_resource(package_name, name_parts[-1]),
  1108                 resourceutil.open_resource(package_name, name_parts[-1]),
  1105         )
  1109             )
  1106 
  1110         except (ImportError, OSError):
  1107 
  1111             return None, None
  1108 def try_open_template(name, templatepath=None):
       
  1109     try:
       
  1110         return open_template(name, templatepath)
       
  1111     except (EnvironmentError, ImportError):
       
  1112         return None, None