changeset: 84691:563b27bef79f user: Victor Stinner date: Wed Jul 17 21:50:21 2013 +0200 files: Modules/_heapqmodule.c description: Issue #18408: Fix heapq.heappop(), handle PyList_SetSlice() failure diff -r 4d3bb9763bf9 -r 563b27bef79f Modules/_heapqmodule.c --- a/Modules/_heapqmodule.c Wed Jul 17 21:42:45 2013 +0200 +++ b/Modules/_heapqmodule.c Wed Jul 17 21:50:21 2013 +0200 @@ -168,7 +168,10 @@ lastelt = PyList_GET_ITEM(heap, n-1) ; Py_INCREF(lastelt); - PyList_SetSlice(heap, n-1, n, NULL); + if (PyList_SetSlice(heap, n-1, n, NULL) < 0) { + Py_DECREF(lastelt); + return NULL; + } n--; if (!n)

AltStyle によって変換されたページ (->オリジナル) /