aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/Python/pylifecycle.c
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@python.org>2020-12-26 20:26:08 +0100
committerGitHub <noreply@github.com>2020-12-26 20:26:08 +0100
commitf4507231e3f0cf8827cec5592571ce371c6813e8 (patch)
tree1945e1cd6088d46c00f68f8a4a89eb35154ddf6c /Python/pylifecycle.c
parent3bcc4ead3f66a58604b7ce87d14e909406c3b364 (diff)
downloadcpython-f4507231e3f0cf8827cec5592571ce371c6813e8.tar.gz
cpython-f4507231e3f0cf8827cec5592571ce371c6813e8.zip
bpo-42745: finalize_interp_types() calls _PyType_Fini() (GH-23953)
Call _PyType_Fini() in subinterpreters. Fix reference leaks in subinterpreters.
Diffstat (limited to 'Python/pylifecycle.c')
-rw-r--r--Python/pylifecycle.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/Python/pylifecycle.c b/Python/pylifecycle.c
index ccbacb48194..9828dffad5c 100644
--- a/Python/pylifecycle.c
+++ b/Python/pylifecycle.c
@@ -1573,6 +1573,7 @@ finalize_interp_types(PyThreadState *tstate)
_PyFrame_Fini(tstate);
_PyAsyncGen_Fini(tstate);
_PyContext_Fini(tstate);
+ _PyType_Fini(tstate);
// Call _PyUnicode_ClearInterned() before _PyDict_Fini() since it uses
// a dict internally.
_PyUnicode_ClearInterned(tstate);
@@ -1751,9 +1752,6 @@ Py_FinalizeEx(void)
/* Destroy the database used by _PyImport_{Fixup,Find}Extension */
_PyImport_Fini();
- /* Cleanup typeobject.c's internal caches. */
- _PyType_Fini(tstate);
-
/* unload faulthandler module */
_PyFaulthandler_Fini();