Kaydet (Commit) 26da1871 authored tarafından Benjamin Peterson's avatar Benjamin Peterson

simplify and modernize updatecache()

üst b9e7c012
......@@ -72,13 +72,13 @@ def updatecache(filename, module_globals=None):
if filename in cache:
del cache[filename]
if not filename or filename[0] + filename[-1] == '<>':
if not filename or (filename.startswith('<') and filename.endswith('>')):
return []
fullname = filename
try:
stat = os.stat(fullname)
except os.error, msg:
except OSError:
basename = filename
# Try for a __loader__, if available
......@@ -115,20 +115,18 @@ def updatecache(filename, module_globals=None):
fullname = os.path.join(dirname, basename)
except (TypeError, AttributeError):
# Not sufficiently string-like to do anything useful with.
continue
try:
stat = os.stat(fullname)
break
except os.error:
pass
else:
try:
stat = os.stat(fullname)
break
except os.error:
pass
else:
return []
try:
fp = open(fullname, 'rU')
lines = fp.readlines()
fp.close()
except IOError, msg:
with open(fullname, 'rU') as fp:
lines = fp.readlines()
except IOError:
return []
if lines and not lines[-1].endswith('\n'):
lines[-1] += '\n'
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment