Skip to content

Commit 97e414f

Browse files
Update get_message_lines to use TracebackException
Refactor exception message handling to use TracebackException.
1 parent 3e31626 commit 97e414f

1 file changed

Lines changed: 2 additions & 12 deletions

File tree

Lib/idlelib/run.py

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -232,18 +232,8 @@ def get_message_lines(typ, exc, tb):
232232
"Return line composing the exception message."
233233
if typ in (AttributeError, NameError):
234234
# 3.10+ hints are not directly accessible from python (#44026).
235-
err = io.StringIO()
236-
with contextlib.redirect_stderr(err):
237-
sys.__excepthook__(typ, exc, tb)
238-
err_list = err.getvalue().split("\n")[1:]
239-
240-
for i in range(len(err_list)):
241-
if err_list[i].startswith(" "):
242-
continue
243-
else:
244-
err_list = err_list[i:-1]
245-
break
246-
return ["\n".join(err_list) + "\n"]
235+
traceback_exception = traceback.TracebackException(typ, exc, tb)
236+
return list(traceback_exception.format_exception_only())
247237
else:
248238
return traceback.format_exception_only(typ, exc)
249239

0 commit comments

Comments
 (0)