Patch from Gordon McMillan.

updatecache():  When using imputil, sys.path may contain things other than
strings.  Ignore such things instead of blowing up.
Hard to say whether this is a bugfix or a feature ...
This commit is contained in:
Tim Peters 2001-05-29 04:27:01 +00:00
parent 4324aa3572
commit 12f21ae07f
1 changed files with 12 additions and 5 deletions

View File

@ -69,15 +69,22 @@ def updatecache(filename):
try:
stat = os.stat(fullname)
except os.error, msg:
# Try looking through the module search path
# Try looking through the module search path.
basename = os.path.split(filename)[1]
for dirname in sys.path:
fullname = os.path.join(dirname, basename)
# When using imputil, sys.path may contain things other than
# strings; ignore them when it happens.
try:
stat = os.stat(fullname)
break
except os.error:
fullname = os.path.join(dirname, basename)
except (TypeError, AttributeError):
# Not sufficiently string-like to do anything useful with.
pass
else:
try:
stat = os.stat(fullname)
break
except os.error:
pass
else:
# No luck
## print '*** Cannot stat', filename, ':', msg