From: Benjamin Peterson Date: Fri, 16 Mar 2012 17:21:02 +0000 (-0500) Subject: check result of PyMem_New X-Git-Tag: v3.3.0a2~148 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=7ed67270a89f77a6063c2fd20153e7f91332f25b;p=thirdparty%2FPython%2Fcpython.git check result of PyMem_New --- diff --git a/Python/getargs.c b/Python/getargs.c index 37f1898819a3..268a1134ea64 100644 --- a/Python/getargs.c +++ b/Python/getargs.c @@ -267,6 +267,10 @@ vgetargs1(PyObject *args, const char *format, va_list *p_va, int flags) format = formatsave; freelist.entries = PyMem_New(freelistentry_t, max); + if (freelist.entries == NULL) { + PyErr_NoMemory(); + return 0; + } if (compat) { if (max == 0) { @@ -1430,6 +1434,10 @@ vgetargskeywords(PyObject *args, PyObject *keywords, const char *format, continue; freelist.entries = PyMem_New(freelistentry_t, len); + if (freelist.entries == NULL) { + PyErr_NoMemory(); + return 0; + } nargs = PyTuple_GET_SIZE(args); nkeywords = (keywords == NULL) ? 0 : PyDict_Size(keywords);