Fix for modulefinder so that it prints all modules an unknown module

was referenced in instead of only the last.  (Sjoerd Mullender)
This commit is contained in:
Guido van Rossum 1998-12-22 13:44:01 +00:00
parent f96cff2c82
commit fdd302820e
1 changed files with 6 additions and 2 deletions

View File

@ -280,7 +280,9 @@ class ModuleFinder:
self.import_hook(name, m)
except ImportError, msg:
self.msg(2, "ImportError:", str(msg))
self.badmodules[name] = {m.__name__:None}
if not self.badmodules.has_key(name):
self.badmodules[name] = {}
self.badmodules[name][m.__name__] = None
elif op == IMPORT_FROM:
name = co.co_names[oparg]
assert lastname is not None
@ -290,7 +292,9 @@ class ModuleFinder:
except ImportError, msg:
self.msg(2, "ImportError:", str(msg))
fullname = lastname + "." + name
self.badmodules[fullname] = {m.__name__:None}
if not self.badmodules.has_key(fullname):
self.badmodules[fullname] = {}
self.badmodules[fullname][m.__name__] = None
else:
lastname = None
for c in co.co_consts: