Repair test failure. Bug 8727.

This commit is contained in:
Barry Warsaw 2010-05-18 14:15:20 +00:00
parent 2b80fa6939
commit 04b5684d00
3 changed files with 13 additions and 3 deletions

View file

@ -494,8 +494,16 @@ class _PyPycFileLoader(PyPycLoader, _PyFileLoader):
if ext_type == imp.PY_COMPILED:
# We don't really care what the extension on self._base_path is,
# as long as it has exactly one dot.
bytecode_path = imp.cache_from_source(self._base_path + '.py')
return (bytecode_path if _path_exists(bytecode_path) else None)
source_path = self._base_path + '.py'
pycache_path = imp.cache_from_source(source_path)
legacy_path = self._base_path + '.pyc'
# The rule is: if the source file exists, then Python always uses
# the __pycache__/foo.<tag>.pyc file. If the source file does not
# exist, then Python uses the legacy path.
pyc_path = (pycache_path
if _path_exists(source_path)
else legacy_path)
return (pyc_path if _path_exists(pyc_path) else None)
return super()._find_path(ext_type)
@_check_name