summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Doc/whatsnew/3.13.rst2
-rw-r--r--Include/internal/pycore_list.h2
-rw-r--r--Objects/listobject.c2
3 files changed, 2 insertions, 4 deletions
diff --git a/Doc/whatsnew/3.13.rst b/Doc/whatsnew/3.13.rst
index aa693c6..f2c1441 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 <debug-build>` 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 056be2c..55d67b3 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 ad1840b..af006ef 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)