mirror of
https://github.com/python/cpython.git
synced 2025-08-30 21:48:47 +00:00
Only catch the errors that can actually occur, as reported in bug #411881.
This commit is contained in:
parent
f3456912e4
commit
58682b7fe5
2 changed files with 9 additions and 5 deletions
10
Lib/types.py
10
Lib/types.py
|
@ -31,7 +31,8 @@ FunctionType = type(_f)
|
|||
LambdaType = type(lambda: None) # Same as FunctionType
|
||||
try:
|
||||
CodeType = type(_f.func_code)
|
||||
except:
|
||||
except RuntimeError:
|
||||
# Execution in restricted environment
|
||||
pass
|
||||
|
||||
def g():
|
||||
|
@ -54,7 +55,8 @@ ModuleType = type(sys)
|
|||
|
||||
try:
|
||||
FileType = type(sys.__stdin__)
|
||||
except:
|
||||
except AttributeError:
|
||||
# Not available in restricted mode
|
||||
pass
|
||||
XRangeType = type(xrange(0))
|
||||
|
||||
|
@ -65,7 +67,9 @@ except TypeError:
|
|||
tb = sys.exc_info()[2]
|
||||
TracebackType = type(tb)
|
||||
FrameType = type(tb.tb_frame)
|
||||
except:
|
||||
except AttributeError:
|
||||
# In the restricted environment, exc_info returns (None, None,
|
||||
# None) Then, tb.tb_frame gives an attribute error
|
||||
pass
|
||||
tb = None; del tb
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue