Defend against a mutation during comparison

This commit is contained in:
Raymond Hettinger 2015-05-11 19:58:56 -07:00
parent 1af2bf75a2
commit b9db9e152f
1 changed files with 5 additions and 0 deletions

View File

@ -224,6 +224,11 @@ heappushpop(PyObject *self, PyObject *args)
return item; return item;
} }
if (PyList_GET_SIZE(heap) == 0) {
PyErr_SetString(PyExc_IndexError, "index out of range");
return NULL;
}
returnitem = PyList_GET_ITEM(heap, 0); returnitem = PyList_GET_ITEM(heap, 0);
Py_INCREF(item); Py_INCREF(item);
PyList_SET_ITEM(heap, 0, item); PyList_SET_ITEM(heap, 0, item);