mirror of
https://github.com/python/cpython.git
synced 2025-08-03 08:34:29 +00:00
close module file after loading
This commit is contained in:
parent
be0a8a6042
commit
2ea05098eb
1 changed files with 13 additions and 10 deletions
|
@ -133,16 +133,19 @@ class BasicModuleLoader(_Verbose):
|
|||
|
||||
def load_module(self, name, stuff):
|
||||
file, filename, (suff, mode, type) = stuff
|
||||
if type == BUILTIN_MODULE:
|
||||
return imp.init_builtin(name)
|
||||
if type == FROZEN_MODULE:
|
||||
return imp.init_frozen(name)
|
||||
if type == C_EXTENSION:
|
||||
return imp.load_dynamic(name, filename, file)
|
||||
if type == PY_SOURCE:
|
||||
return imp.load_source(name, filename, file)
|
||||
if type == PY_COMPILED:
|
||||
return imp.load_compiled(name, filename, file)
|
||||
try:
|
||||
if type == BUILTIN_MODULE:
|
||||
return imp.init_builtin(name)
|
||||
if type == FROZEN_MODULE:
|
||||
return imp.init_frozen(name)
|
||||
if type == C_EXTENSION:
|
||||
return imp.load_dynamic(name, filename, file)
|
||||
if type == PY_SOURCE:
|
||||
return imp.load_source(name, filename, file)
|
||||
if type == PY_COMPILED:
|
||||
return imp.load_compiled(name, filename, file)
|
||||
finally:
|
||||
if file: file.close()
|
||||
raise ImportError, "Unrecognized module type (%s) for %s" % \
|
||||
(`type`, name)
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue