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

Notify the caller of the failure (MemoryError exception).
This commit is contained in:
Victor Stinner 2013-11-21 12:16:35 +01:00
parent a282825bf6
commit 35f2803a24
1 changed files with 3 additions and 2 deletions

View File

@ -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 */