Commit 0823ffb2 authored by Benjamin Peterson's avatar Benjamin Peterson

properly handle malloc failure (closes #24044)

Patch by Christian Heimes.
parent 893cce92
...@@ -10,6 +10,9 @@ What's New in Python 3.2.7? ...@@ -10,6 +10,9 @@ What's New in Python 3.2.7?
Core and Builtins Core and Builtins
----------------- -----------------
- Issue #24044: Fix possible null pointer dereference in list.sort in out of
memory conditions.
- Issue #23055: Fixed a buffer overflow in PyUnicode_FromFormatV. Analysis - Issue #23055: Fixed a buffer overflow in PyUnicode_FromFormatV. Analysis
and fix by Guido Vranken. and fix by Guido Vranken.
......
...@@ -1924,8 +1924,10 @@ listsort(PyListObject *self, PyObject *args, PyObject *kwds) ...@@ -1924,8 +1924,10 @@ listsort(PyListObject *self, PyObject *args, PyObject *kwds)
keys = &ms.temparray[saved_ob_size+1]; keys = &ms.temparray[saved_ob_size+1];
else { else {
keys = PyMem_MALLOC(sizeof(PyObject *) * saved_ob_size); keys = PyMem_MALLOC(sizeof(PyObject *) * saved_ob_size);
if (keys == NULL) if (keys == NULL) {
return NULL; PyErr_NoMemory();
goto keyfunc_fail;
}
} }
for (i = 0; i < saved_ob_size ; i++) { for (i = 0; i < saved_ob_size ; i++) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment