Mercurial > cpython-lru_cache-weakref
diff Lib/traceback.py @ 5832:285fb6a99e5f legacy-trunk
Use sys.exc_info() instead of sys.exc_{type,value,traceback}.
Also corrected a typo in format_stack (t should've been f).
| author | Guido van Rossum <guido@python.org> |
|---|---|
| date | Fri, 18 Jul 1997 16:46:36 +0000 |
| parents | 34182a6408e0 |
| children | 9e429518cb20 |
line wrap: on
line diff
--- a/Lib/traceback.py Fri Jul 18 04:26:25 1997 +0000 +++ b/Lib/traceback.py Fri Jul 18 16:46:36 1997 +0000 @@ -128,8 +128,11 @@ def print_exc(limit=None, file=None): if not file: file = sys.stderr - print_exception(sys.exc_type, sys.exc_value, sys.exc_traceback, - limit, file) + try: + etype, value, tb = sys.exc_info() + print_exception(etype, value, tb, limit, file) + finally: + etype = value = tb = None def print_last(limit=None, file=None): if not file: @@ -143,8 +146,7 @@ try: raise ZeroDivisionError except ZeroDivisionError: - tb = sys.exc_traceback - f = tb.tb_frame.f_back + f = sys.exc_info()[2].tb_frame.f_back print_list(extract_stack(f, limit), file) def format_stack(f=None, limit=None): @@ -152,17 +154,15 @@ try: raise ZeroDivisionError except ZeroDivisionError: - tb = sys.exc_traceback - f = tb.tb_frame.f_back - return format_list(extract_stack(t, limit)) + f = sys.exc_info()[2].tb_frame.f_back + return format_list(extract_stack(f, limit)) def extract_stack(f=None, limit = None): if f is None: try: raise ZeroDivisionError except ZeroDivisionError: - tb = sys.exc_traceback - f = tb.tb_frame.f_back + f = sys.exc_info()[2].tb_frame.f_back if limit is None: if hasattr(sys, 'tracebacklimit'): limit = sys.tracebacklimit
