diff options
author | Benjamin Peterson <benjamin@python.org> | 2012-09-29 18:14:19 (GMT) |
---|---|---|
committer | Benjamin Peterson <benjamin@python.org> | 2012-09-29 18:14:19 (GMT) |
commit | 14fb44e1bab9db128770f1d91d244916a669e7c3 (patch) | |
tree | 278d9ccc8f819b05f8114c3154087c70b88ed69c /Lib/importlib/_bootstrap.py | |
parent | 1764c80925795b6f059e961c5a352c5ece5a7fff (diff) | |
parent | 99a247fd01c1cd780c0c3ee1116657627f1ee744 (diff) | |
download | cpython-14fb44e1bab9db128770f1d91d244916a669e7c3.zip cpython-14fb44e1bab9db128770f1d91d244916a669e7c3.tar.gz cpython-14fb44e1bab9db128770f1d91d244916a669e7c3.tar.bz2 |
merge mostly from default
Diffstat (limited to 'Lib/importlib/_bootstrap.py')
-rw-r--r-- | Lib/importlib/_bootstrap.py | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/Lib/importlib/_bootstrap.py b/Lib/importlib/_bootstrap.py index 5c4d2c6..98361a7 100644 --- a/Lib/importlib/_bootstrap.py +++ b/Lib/importlib/_bootstrap.py @@ -419,8 +419,8 @@ def cache_from_source(path, debug_override=None): .pyc/.pyo file calculated as if the .py file were imported. The extension will be .pyc unless sys.flags.optimize is non-zero, then it will be .pyo. - If debug_override is not None, then it must be a boolean and is taken as - the value of bool(sys.flags.optimize) instead. + If debug_override is not None, then it must be a boolean and is used in + place of sys.flags.optimize. If sys.implementation.cache_tag is None then NotImplementedError is raised. @@ -1669,7 +1669,11 @@ def __import__(name, globals=None, locals=None, fromlist=(), level=0): elif not name: return module else: + # Figure out where to slice the module's name up to the first dot + # in 'name'. cut_off = len(name) - len(name.partition('.')[0]) + # Slice end needs to be positive to alleviate need to special-case + # when ``'.' not in name``. return sys.modules[module.__name__[:len(module.__name__)-cut_off]] else: return _handle_fromlist(module, fromlist, _gcd_import) |