bpo-39465: Cleanup _PyUnicode_FromId() code by vstinner · Pull Request #20595 · python/cpython

Expand Up @@ -2275,17 +2275,23 @@ PyUnicode_FromString(const char *u) PyObject * _PyUnicode_FromId(_Py_Identifier *id) { if (!id->object) { id->object = PyUnicode_DecodeUTF8Stateful(id->string, strlen(id->string), NULL, NULL); if (!id->object) return NULL; PyUnicode_InternInPlace(&id->object); assert(!id->next); id->next = static_strings; static_strings = id; if (id->object) { return id->object; }
PyObject *obj; obj = PyUnicode_DecodeUTF8Stateful(id->string, strlen(id->string), NULL, NULL); if (!obj) { return NULL; } PyUnicode_InternInPlace(&obj);
assert(!id->next); id->object = obj; id->next = static_strings; static_strings = id; return id->object; }
Expand Down