Browse Source

Close #19578: Fix list_ass_subscript(), handle list_resize() failure

Notify the caller of the failure (MemoryError exception).
pull/224/head
Victor Stinner 13 years ago
parent
commit
35f2803a24
  1. 5
      Objects/listobject.c

5
Objects/listobject.c

@ -2483,6 +2483,7 @@ list_ass_subscript(PyListObject* self, PyObject* item, PyObject* value)
PyObject **garbage;
size_t cur;
Py_ssize_t i;
int res;
if (slicelength <= 0)
return 0;
@ -2533,14 +2534,14 @@ list_ass_subscript(PyListObject* self, PyObject* item, PyObject* value)
}
Py_SIZE(self) -= slicelength;
list_resize(self, Py_SIZE(self));
res = list_resize(self, Py_SIZE(self));
for (i = 0; i < slicelength; i++) {
Py_DECREF(garbage[i]);
}
PyMem_FREE(garbage);
return 0;
return res;
}
else {
/* assign slice */

Loading…
Cancel
Save