bpo-32030: Add _PyImport_Fini2() by vstinner · Pull Request #4737 · python/cpython (original) (raw)
PyImport_ExtendInittab() now uses PyMem_RawRealloc() rather than
PyMem_Realloc(). PyImport_ExtendInittab() can be called before
Py_Initialize() whereas only the PyMem_Raw allocator is supposed to
be used before Py_Initialize().
Add _PyImport_Fini2() to release the memory allocated by
PyImport_ExtendInittab() at exit. PyImport_ExtendInittab() now forces
the usage of the default raw allocator, to be able to release memory
in _PyImport_Fini2().
Don't export these functions anymore to be C API, only to
Py_BUILD_CORE:
- _PyExc_Fini()
- _PyImport_Fini()
- _PyGC_DumpShutdownStats()
- _PyGC_Fini()
- _PyType_Fini()
- _Py_HashRandomization_Fini()