gh-146527: Fix memory leak in _PyGC_Fini() (#150969)

Free generation_stats allocated by _PyGC_Init().

Fix Python/gc.c: Python/gc_free_threading.c was already fixed.
This commit is contained in:
Victor Stinner 2026-06-05 15:43:05 +02:00 committed by GitHub
parent c195a046f8
commit 0036565e81
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -1876,6 +1876,8 @@ _PyGC_Fini(PyInterpreterState *interp)
GCState *gcstate = &interp->gc;
Py_CLEAR(gcstate->garbage);
Py_CLEAR(gcstate->callbacks);
PyMem_RawFree(gcstate->generation_stats);
gcstate->generation_stats = NULL;
/* Prevent a subtle bug that affects sub-interpreters that use basic
* single-phase init extensions (m_size == -1). Those extensions cause objects