230 static PyObject*
231 getiteratorhandler(PyObject *self, PyObject *args)
232 {
233 PyObject *node;
234
235 if (!PyArg_ParseTuple(args, "O:getiterator", &node)) {
when PyArg_ParseTuple() succeeds
taking False path
236 return NULL;
237 }
238 PyObject *list;
239 PyObject *result;
240 if (!(list = PyList_New(0))) {
when PyList_New() succeeds
taking False path
PyListObject allocated at: if (!(list = PyList_New(0))) {
ob_refcnt is now refs: 1 + N where N >= 0
241 return NULL;
242 }
243 result = getiterator(node, list);
when getiterator() succeeds
244 if (result == NULL) {
taking False path
245 PyList_SetSlice(list, 0, PyList_GET_SIZE(list), (PyObject *)NULL);
246 Py_DECREF(list);
247 }
248 return result;
249 }
ob_refcnt of '*list' is 1 too high
was expecting final ob_refcnt to be N + 0 (for some unknown N)
but final ob_refcnt is N + 1