# Author: Catalin Manciu diff -r 58ebfa7c1361 Include/pymem.h --- a/Include/pymem.h Mon Feb 15 16:51:24 2016 +1100 +++ b/Include/pymem.h Fri Feb 19 14:32:28 2016 +0200 @@ -71,11 +71,9 @@ pymalloc. To solve these problems, allocate an extra byte. */ /* Returns NULL to indicate error if a negative size or size larger than Py_ssize_t can represent is supplied. Helps prevents security holes. */ -#define PyMem_MALLOC(n) ((size_t)(n) > (size_t)PY_SSIZE_T_MAX ? NULL \ - : malloc((n) ? (n) : 1)) -#define PyMem_REALLOC(p, n) ((size_t)(n) > (size_t)PY_SSIZE_T_MAX ? NULL \ - : realloc((p), (n) ? (n) : 1)) -#define PyMem_FREE free +#define PyMem_MALLOC(n) PyObject_Malloc((n) ? (n) : 1) +#define PyMem_REALLOC(p, n) PyObject_Realloc((p), (n) ? (n) : 1) +#define PyMem_FREE PyObject_Free #endif /* PYMALLOC_DEBUG */ @@ -91,7 +89,7 @@ #define PyMem_New(type, n) \ ( ((size_t)(n) > PY_SSIZE_T_MAX / sizeof(type)) ? NULL : \ - ( (type *) PyMem_Malloc((n) * sizeof(type)) ) ) + ( (type *) PyObject_Malloc((n) * sizeof(type)) ) ) #define PyMem_NEW(type, n) \ ( ((size_t)(n) > PY_SSIZE_T_MAX / sizeof(type)) ? NULL : \ ( (type *) PyMem_MALLOC((n) * sizeof(type)) ) ) @@ -104,7 +102,7 @@ */ #define PyMem_Resize(p, type, n) \ ( (p) = ((size_t)(n) > PY_SSIZE_T_MAX / sizeof(type)) ? NULL : \ - (type *) PyMem_Realloc((p), (n) * sizeof(type)) ) + (type *) PyObject_Realloc((p), (n) * sizeof(type)) ) #define PyMem_RESIZE(p, type, n) \ ( (p) = ((size_t)(n) > PY_SSIZE_T_MAX / sizeof(type)) ? NULL : \ (type *) PyMem_REALLOC((p), (n) * sizeof(type)) ) @@ -112,7 +110,7 @@ /* PyMem{Del,DEL} are left over from ancient days, and shouldn't be used * anymore. They're just confusing aliases for PyMem_{Free,FREE} now. */ -#define PyMem_Del PyMem_Free +#define PyMem_Del PyObject_Free #define PyMem_DEL PyMem_FREE #ifdef __cplusplus