mirror of
https://github.com/python/cpython.git
synced 2024-11-24 00:38:00 +01:00
Patch by Toby Dickenson: don't die when an error occurs during string
conversion in an exception, but instead display <unprintable %s object> where %s is the type name.
This commit is contained in:
parent
986659fffe
commit
2823f03a56
@ -166,9 +166,15 @@ def format_exception_only(etype, value):
|
||||
s = s + ' '
|
||||
list.append('%s^\n' % s)
|
||||
value = msg
|
||||
list.append('%s: %s\n' % (str(stype), str(value)))
|
||||
list.append('%s: %s\n' % (str(stype), _some_str(value)))
|
||||
return list
|
||||
|
||||
def _some_str(value):
|
||||
try:
|
||||
return str(value)
|
||||
except:
|
||||
return '<unprintable %s object>' % type(value).__name__
|
||||
|
||||
|
||||
def print_exc(limit=None, file=None):
|
||||
"""This is a shorthand for 'print_exception(sys.exc_type,
|
||||
|
Loading…
Reference in New Issue
Block a user