mirror of
https://github.com/python/cpython.git
synced 2025-07-24 03:35:53 +00:00
fix bug in example (should close file at all times)
This commit is contained in:
parent
6b686e94a1
commit
d6ac380d39
2 changed files with 24 additions and 18 deletions
|
@ -158,14 +158,17 @@ def __import__(name, globals=None, locals=None, fromlist=None):
|
|||
fp, pathname, (suffix, mode, type) = imp.find_module(name)
|
||||
|
||||
# See what we got.
|
||||
# Note that fp will be closed automatically when we return.
|
||||
if type == imp.C_EXTENSION:
|
||||
return imp.load_dynamic(name, pathname)
|
||||
if type == imp.PY_SOURCE:
|
||||
return imp.load_source(name, pathname, fp)
|
||||
if type == imp.PY_COMPILED:
|
||||
return imp.load_compiled(name, pathname, fp)
|
||||
try:
|
||||
if type == imp.C_EXTENSION:
|
||||
return imp.load_dynamic(name, pathname)
|
||||
if type == imp.PY_SOURCE:
|
||||
return imp.load_source(name, pathname, fp)
|
||||
if type == imp.PY_COMPILED:
|
||||
return imp.load_compiled(name, pathname, fp)
|
||||
|
||||
# Shouldn't get here at all.
|
||||
raise ImportError, '%s: unknown module type (%d)' % (name, type)
|
||||
# Shouldn't get here at all.
|
||||
raise ImportError, '%s: unknown module type (%d)' % (name, type)
|
||||
finally:
|
||||
# Since we may exit via an exception, close fp explicitly.
|
||||
fp.close()
|
||||
\end{verbatim}
|
||||
|
|
|
@ -158,14 +158,17 @@ def __import__(name, globals=None, locals=None, fromlist=None):
|
|||
fp, pathname, (suffix, mode, type) = imp.find_module(name)
|
||||
|
||||
# See what we got.
|
||||
# Note that fp will be closed automatically when we return.
|
||||
if type == imp.C_EXTENSION:
|
||||
return imp.load_dynamic(name, pathname)
|
||||
if type == imp.PY_SOURCE:
|
||||
return imp.load_source(name, pathname, fp)
|
||||
if type == imp.PY_COMPILED:
|
||||
return imp.load_compiled(name, pathname, fp)
|
||||
try:
|
||||
if type == imp.C_EXTENSION:
|
||||
return imp.load_dynamic(name, pathname)
|
||||
if type == imp.PY_SOURCE:
|
||||
return imp.load_source(name, pathname, fp)
|
||||
if type == imp.PY_COMPILED:
|
||||
return imp.load_compiled(name, pathname, fp)
|
||||
|
||||
# Shouldn't get here at all.
|
||||
raise ImportError, '%s: unknown module type (%d)' % (name, type)
|
||||
# Shouldn't get here at all.
|
||||
raise ImportError, '%s: unknown module type (%d)' % (name, type)
|
||||
finally:
|
||||
# Since we may exit via an exception, close fp explicitly.
|
||||
fp.close()
|
||||
\end{verbatim}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue