]> granicus.if.org Git - python/commitdiff
Temporarily get rid of the registration of Tcl_Finalize() as a
authorGuido van Rossum <guido@python.org>
Tue, 14 Jul 1998 18:02:13 +0000 (18:02 +0000)
committerGuido van Rossum <guido@python.org>
Tue, 14 Jul 1998 18:02:13 +0000 (18:02 +0000)
low-level Python exit handler.  This can attempt to call Python code
at a point that the interpreter and thread state have already been
destroyed, causing a Bus Error.  Given the intended use of
Py_AtExit(), I'm not convinced that it's a good idea to call it
earlier during Python's finalization sequence...  (Although this is
the only use for it in the entire distribution.)

Modules/_tkinter.c

index fc526577c0c1451411f3e2034b3371353555c59b..e1b2b188964d6ffff8565c7d8a63a39c59fc38f0 100644 (file)
@@ -2030,9 +2030,14 @@ init_tkinter()
        if (PyErr_Occurred())
                return;
 
+#if 0
+       /* This was not a good idea; through <Destroy> bindings,
+          Tcl_Finalize() may invoke Python code but at that point the
+          interpreter and thread state have already been destroyed! */
 #if TKMAJORMINOR >= 8000
        Py_AtExit(Tcl_Finalize);
 #endif
+#endif
 
 #ifdef macintosh
        /*