• Victor Stinner's avatar
    bpo-32030: Add _PyImport_Fini2() (#4737) · 92a3c6f4
    Victor Stinner authored
    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()
    92a3c6f4
pylifecycle.h 6.08 KB