cleanup in custom import, thanks Paolo

This commit is contained in:
mdipierro
2019-04-06 19:51:57 -07:00
parent e637b6b58a
commit f2dcc53a18
2 changed files with 5 additions and 6 deletions
+4 -5
View File
@@ -63,9 +63,8 @@ def custom_importer(name, globals={}, locals=None, fromlist=(), level=_DEFAULT_L
base_importer = TRACK_IMPORTER base_importer = TRACK_IMPORTER
else: else:
base_importer = NATIVE_IMPORTER base_importer = NATIVE_IMPORTER
items = current.request.folder.split(os.path.sep) # rstrip for backward compatibility
# FIXME: why does request.folder endswith(os.path.sep) ? items = current.request.folder.rstrip(os.sep).split(os.sep)
if not items[-1]: items.pop()
modules_prefix = '.'.join(items[-2:]) + '.modules' modules_prefix = '.'.join(items[-2:]) + '.modules'
if not fromlist: if not fromlist:
# "import x" or "import x.y" # "import x" or "import x.y"
@@ -77,8 +76,8 @@ def custom_importer(name, globals={}, locals=None, fromlist=(), level=_DEFAULT_L
if result is None: if result is None:
try: try:
result = sys.modules[modules_prefix] result = sys.modules[modules_prefix]
except KeyError as e: except KeyError:
raise ImportError("No module named %s" % e) raise ImportError("No module named %s" % modules_prefix)
return result return result
else: else:
# "from x import a, b, ..." # "from x import a, b, ..."