From 9f1292d84000f9793793002f46cd2767ff8e3dc6 Mon Sep 17 00:00:00 2001 From: Guido van Rossum Date: Tue, 13 Oct 1998 20:02:39 +0000 Subject: [PATCH] Perhaps a controversial change: when reporting a callback exception, assign the exception info to sys.last_{type,value,traceback}. That way, an introspective Tkinter app can inspect its own stack trace. (The controversy is that it would keep some objects alive, but that's probably no big deal.) --- Lib/lib-tk/Tkinter.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Lib/lib-tk/Tkinter.py b/Lib/lib-tk/Tkinter.py index 4662f3b0f0d..0f4c7135337 100644 --- a/Lib/lib-tk/Tkinter.py +++ b/Lib/lib-tk/Tkinter.py @@ -935,6 +935,9 @@ class Tk(Misc, Wm): def report_callback_exception(self, exc, val, tb): import traceback, sys sys.stderr.write("Exception in Tkinter callback\n") + sys.last_type = exc + sys.last_value = val + sys.last_traceback = tb traceback.print_exception(exc, val, tb) # Ideally, the classes Pack, Place and Grid disappear, the