summaryrefslogtreecommitdiffstats
path: root/Objects/unicodeobject.c
diff options
context:
space:
mode:
authorEric Snow <ericsnowcurrently@gmail.com>2023-05-02 01:36:00 (GMT)
committerGitHub <noreply@github.com>2023-05-02 01:36:00 (GMT)
commitfdd878650d325297cd801305bc2d1b0e903e42b4 (patch)
tree9814f09627ef014852dcc3fa462dfec30e5e591d /Objects/unicodeobject.c
parentb1ca34d4d5e463b8108eea20090f12292390f0cf (diff)
downloadcpython-fdd878650d325297cd801305bc2d1b0e903e42b4.zip
cpython-fdd878650d325297cd801305bc2d1b0e903e42b4.tar.gz
cpython-fdd878650d325297cd801305bc2d1b0e903e42b4.tar.bz2
gh-94673: Properly Initialize and Finalize Static Builtin Types for Each Interpreter (gh-104072)
Until now, we haven't been initializing nor finalizing the per-interpreter state properly.
Diffstat (limited to 'Objects/unicodeobject.c')
-rw-r--r--Objects/unicodeobject.c16
1 files changed, 6 insertions, 10 deletions
diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c
index 7537c12..6ae68cc 100644
--- a/Objects/unicodeobject.c
+++ b/Objects/unicodeobject.c
@@ -14573,13 +14573,13 @@ _PyUnicode_InitGlobalObjects(PyInterpreterState *interp)
PyStatus
_PyUnicode_InitTypes(PyInterpreterState *interp)
{
- if (_PyStaticType_InitBuiltin(&EncodingMapType) < 0) {
+ if (_PyStaticType_InitBuiltin(interp, &EncodingMapType) < 0) {
goto error;
}
- if (_PyStaticType_InitBuiltin(&PyFieldNameIter_Type) < 0) {
+ if (_PyStaticType_InitBuiltin(interp, &PyFieldNameIter_Type) < 0) {
goto error;
}
- if (_PyStaticType_InitBuiltin(&PyFormatterIter_Type) < 0) {
+ if (_PyStaticType_InitBuiltin(interp, &PyFormatterIter_Type) < 0) {
goto error;
}
return _PyStatus_OK();
@@ -15158,13 +15158,9 @@ unicode_is_finalizing(void)
void
_PyUnicode_FiniTypes(PyInterpreterState *interp)
{
- if (!_Py_IsMainInterpreter(interp)) {
- return;
- }
-
- _PyStaticType_Dealloc(&EncodingMapType);
- _PyStaticType_Dealloc(&PyFieldNameIter_Type);
- _PyStaticType_Dealloc(&PyFormatterIter_Type);
+ _PyStaticType_Dealloc(interp, &EncodingMapType);
+ _PyStaticType_Dealloc(interp, &PyFieldNameIter_Type);
+ _PyStaticType_Dealloc(interp, &PyFormatterIter_Type);
}