[Python-checkins] r70253 - python/branches/py3k/Lib/importlib/_bootstrap.py

brett.cannon python-checkins at python.org
Mon Mar 9 01:14:37 CET 2009


Author: brett.cannon
Date: Mon Mar  9 01:14:37 2009
New Revision: 70253

Log:
Fix importlib._bootstrap.PyPycLoader.load_module() to better handle
source/bytecode paths and what to do when they don't exist.


Modified:
   python/branches/py3k/Lib/importlib/_bootstrap.py

Modified: python/branches/py3k/Lib/importlib/_bootstrap.py
==============================================================================
--- python/branches/py3k/Lib/importlib/_bootstrap.py	(original)
+++ python/branches/py3k/Lib/importlib/_bootstrap.py	Mon Mar  9 01:14:37 2009
@@ -383,9 +383,16 @@
     def load_module(self, module):
         """Load a module from source or bytecode."""
         name = module.__name__
-        source_path = self.source_path(name)
-        bytecode_path = self.bytecode_path(name)
-        module.__file__ = source_path if source_path else bytecode_path
+        try:
+            source_path = self.source_path(name)
+        except ImportError:
+            source_path = None
+        try:
+            bytecode_path = self.bytecode_path(name)
+        except ImportError:
+            bytecode_path = None
+        # get_code can worry about no viable paths existing.
+        module.__file__ = source_path or bytecode_path
         return self._load_module(module)
 
     def get_code(self, fullname):


More information about the Python-checkins mailing list