Nits:
- Neatened the braces in PyList_New(). - Made sure "indexerr" was initialized to NULL. - Factored if blocks in PyList_Append(). - Made sure "allocated" is initialized in list_init().
This commit is contained in:
parent
0468e416c1
commit
fdfe618228
|
@ -65,9 +65,8 @@ PyList_New(int size)
|
||||||
}
|
}
|
||||||
nbytes = size * sizeof(PyObject *);
|
nbytes = size * sizeof(PyObject *);
|
||||||
/* Check for overflow */
|
/* Check for overflow */
|
||||||
if (nbytes / sizeof(PyObject *) != (size_t)size) {
|
if (nbytes / sizeof(PyObject *) != (size_t)size)
|
||||||
return PyErr_NoMemory();
|
return PyErr_NoMemory();
|
||||||
}
|
|
||||||
if (num_free_lists) {
|
if (num_free_lists) {
|
||||||
num_free_lists--;
|
num_free_lists--;
|
||||||
op = free_lists[num_free_lists];
|
op = free_lists[num_free_lists];
|
||||||
|
@ -77,14 +76,12 @@ PyList_New(int size)
|
||||||
if (op == NULL)
|
if (op == NULL)
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
if (size <= 0) {
|
if (size <= 0)
|
||||||
op->ob_item = NULL;
|
op->ob_item = NULL;
|
||||||
}
|
|
||||||
else {
|
else {
|
||||||
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, sizeof(*op->ob_item) * size);
|
||||||
}
|
}
|
||||||
op->ob_size = size;
|
op->ob_size = size;
|
||||||
|
@ -104,7 +101,7 @@ PyList_Size(PyObject *op)
|
||||||
return ((PyListObject *)op) -> ob_size;
|
return ((PyListObject *)op) -> ob_size;
|
||||||
}
|
}
|
||||||
|
|
||||||
static PyObject *indexerr;
|
static PyObject *indexerr = NULL;
|
||||||
|
|
||||||
PyObject *
|
PyObject *
|
||||||
PyList_GetItem(PyObject *op, int i)
|
PyList_GetItem(PyObject *op, int i)
|
||||||
|
@ -213,15 +210,10 @@ app1(PyListObject *self, PyObject *v)
|
||||||
int
|
int
|
||||||
PyList_Append(PyObject *op, PyObject *newitem)
|
PyList_Append(PyObject *op, PyObject *newitem)
|
||||||
{
|
{
|
||||||
if (!PyList_Check(op)) {
|
if (PyList_Check(op) && (newitem != NULL))
|
||||||
PyErr_BadInternalCall();
|
return app1((PyListObject *)op, newitem);
|
||||||
return -1;
|
PyErr_BadInternalCall();
|
||||||
}
|
return -1;
|
||||||
if (newitem == NULL) {
|
|
||||||
PyErr_BadInternalCall();
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
return app1((PyListObject *)op, newitem);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Methods */
|
/* Methods */
|
||||||
|
@ -2314,6 +2306,7 @@ list_init(PyListObject *self, PyObject *args, PyObject *kw)
|
||||||
if (!PyArg_ParseTupleAndKeywords(args, kw, "|O:list", kwlist, &arg))
|
if (!PyArg_ParseTupleAndKeywords(args, kw, "|O:list", kwlist, &arg))
|
||||||
return -1;
|
return -1;
|
||||||
/* Empty previous contents */
|
/* Empty previous contents */
|
||||||
|
self->allocated = self->ob_size;
|
||||||
if (self->ob_size != 0) {
|
if (self->ob_size != 0) {
|
||||||
if (list_ass_slice(self, 0, self->ob_size, (PyObject *)NULL) != 0)
|
if (list_ass_slice(self, 0, self->ob_size, (PyObject *)NULL) != 0)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
Loading…
Reference in New Issue