diff --git a/Doc/whatsnew/3.13.rst b/Doc/whatsnew/3.13.rst index aa693c6f6d55cd8..f2c14415febab99 100644 --- a/Doc/whatsnew/3.13.rst +++ b/Doc/whatsnew/3.13.rst @@ -1049,8 +1049,6 @@ New Features * If Python is built in :ref:`debug mode ` or :option:`with assertions <--with-assertions>`, :c:func:`PyTuple_SET_ITEM` and :c:func:`PyList_SET_ITEM` now check the index argument with an assertion. - If the assertion fails in :c:func:`PyTuple_SET_ITEM`, make sure that the - tuple size is set before. (Contributed by Victor Stinner in :gh:`106168`.) * Add :c:func:`PyModule_Add` function: similar to diff --git a/Include/internal/pycore_list.h b/Include/internal/pycore_list.h index 056be2c80c8ce6f..55d67b32bc8a63e 100644 --- a/Include/internal/pycore_list.h +++ b/Include/internal/pycore_list.h @@ -51,8 +51,8 @@ _PyList_AppendTakeRef(PyListObject *self, PyObject *newitem) Py_ssize_t allocated = self->allocated; assert((size_t)len + 1 < PY_SSIZE_T_MAX); if (allocated > len) { - Py_SET_SIZE(self, len + 1); PyList_SET_ITEM(self, len, newitem); + Py_SET_SIZE(self, len + 1); return 0; } return _PyList_AppendTakeRefListResize(self, newitem); diff --git a/Objects/listobject.c b/Objects/listobject.c index ad1840b01226ece..af006ef0f618504 100644 --- a/Objects/listobject.c +++ b/Objects/listobject.c @@ -956,8 +956,8 @@ list_extend(PyListObject *self, PyObject *iterable) if (Py_SIZE(self) < self->allocated) { /* steals ref */ Py_ssize_t len = Py_SIZE(self); - Py_SET_SIZE(self, len + 1); PyList_SET_ITEM(self, len, item); + Py_SET_SIZE(self, len + 1); } else { if (_PyList_AppendTakeRef(self, item) < 0)