mirror of
https://github.com/python/cpython.git
synced 2025-08-04 08:59:19 +00:00
bpo-46417: Clear Unicode static types at exit (GH-30806)
Add _PyUnicode_FiniTypes() function, called by finalize_interp_types(). It clears these static types: * EncodingMapType * PyFieldNameIter_Type * PyFormatterIter_Type _PyStaticType_Dealloc() now does nothing if tp_subclasses is not NULL.
This commit is contained in:
parent
621a45ccac
commit
1626bf4ac7
6 changed files with 25 additions and 22 deletions
|
@ -1994,10 +1994,6 @@ _PyTypes_FiniTypes(PyInterpreterState *interp)
|
|||
// their base classes.
|
||||
for (Py_ssize_t i=Py_ARRAY_LENGTH(static_types)-1; i>=0; i--) {
|
||||
PyTypeObject *type = static_types[i];
|
||||
// Cannot delete a type if it still has subclasses
|
||||
if (type->tp_subclasses != NULL) {
|
||||
continue;
|
||||
}
|
||||
_PyStaticType_Dealloc(type);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue