From 941117aaa32bf8b02c739ad848ac727292f75b05 Mon Sep 17 00:00:00 2001 From: Steve Dower Date: Fri, 3 Jul 2020 23:34:46 +0100 Subject: bpo-21222: Fix improperly merged change so that final hooks are called before types are cleared (GH-21304) --- Python/pylifecycle.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Python/pylifecycle.c b/Python/pylifecycle.c index e218808..00a9b99 100644 --- a/Python/pylifecycle.c +++ b/Python/pylifecycle.c @@ -1301,8 +1301,6 @@ finalize_interp_clear(PyThreadState *tstate) _PyGC_CollectNoFail(); } - finalize_interp_types(tstate, is_main_interp); - /* Clear all loghooks */ /* Both _PySys_Audit function and users still need PyObject, such as tuple. Call _PySys_ClearAuditHooks when PyObject available. */ @@ -1310,6 +1308,8 @@ finalize_interp_clear(PyThreadState *tstate) _PySys_ClearAuditHooks(tstate); } + finalize_interp_types(tstate, is_main_interp); + if (is_main_interp) { /* XXX Still allocated: - various static ad-hoc pointers to interned strings -- cgit v0.12