PyList_New(): we went to all the trouble of computing and bounds-checking

the size_t nbytes, and passed nbytes to malloc, so it was confusing to
effectively recompute the same thing from scratch in the memset call.
This commit is contained in:
Tim Peters 2004-07-29 02:28:42 +00:00
parent 6d3db7000e
commit 3986d4e660
1 changed files with 2 additions and 1 deletions

View File

@ -59,6 +59,7 @@ PyList_New(int size)
{ {
PyListObject *op; PyListObject *op;
size_t nbytes; size_t nbytes;
if (size < 0) { if (size < 0) {
PyErr_BadInternalCall(); PyErr_BadInternalCall();
return NULL; return NULL;
@ -82,7 +83,7 @@ PyList_New(int size)
op->ob_item = (PyObject **) PyMem_MALLOC(nbytes); op->ob_item = (PyObject **) PyMem_MALLOC(nbytes);
if (op->ob_item == NULL) if (op->ob_item == NULL)
return PyErr_NoMemory(); return PyErr_NoMemory();
memset(op->ob_item, 0, sizeof(*op->ob_item) * size); memset(op->ob_item, 0, nbytes);
} }
op->ob_size = size; op->ob_size = size;
op->allocated = size; op->allocated = size;