homepage

This issue tracker has been migrated to GitHub , and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author JunyiXie
Recipients JunyiXie
Date 2021年06月29日.06:53:41
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1624949622.19.0.942644638958.issue44532@roundup.psfhosted.org>
In-reply-to
Content
In _PyStructSequence_InitType, it will check type is initialized.
but when we have multi subinterpreters, type may be initialized expected.
when type already been initialized, should return 0 rather than throw exception.
```c
/* PyTypeObject has already been initialized */
if (Py_REFCNT(type) != 0) {
 return 0;
}
```
```c
int
_PyStructSequence_InitType(PyTypeObject *type, PyStructSequence_Desc *desc,
 unsigned long tp_flags)
{
 PyMemberDef *members;
 Py_ssize_t n_members, n_unnamed_members;
#ifdef Py_TRACE_REFS
 /* if the type object was chained, unchain it first
 before overwriting its storage */
 if (type->ob_base.ob_base._ob_next) {
 _Py_ForgetReference((PyObject *)type);
 }
#endif
 /* PyTypeObject has already been initialized */
 if (Py_REFCNT(type) != 0) {
 PyErr_BadInternalCall();
 return -1;
 }
```
History
Date User Action Args
2021年06月29日 06:53:42JunyiXiesetrecipients: + JunyiXie
2021年06月29日 06:53:42JunyiXiesetmessageid: <1624949622.19.0.942644638958.issue44532@roundup.psfhosted.org>
2021年06月29日 06:53:42JunyiXielinkissue44532 messages
2021年06月29日 06:53:41JunyiXiecreate

AltStyle によって変換されたページ (->オリジナル) /