564 static PyObject *
565 Radix_reduce(RadixObject *self, PyObject *args)
566 {
567 PyObject *state, *ret;
568
569 if (!PyArg_ParseTuple(args, ":__reduce__"))
when PyArg_ParseTuple() succeeds
taking False path
570 return NULL;
571 if ((state = radix_getstate(self)) == NULL)
when radix_getstate() succeeds
taking False path
new ref from (unknown) radix_getstate allocated at: if ((state = radix_getstate(self)) == NULL)
ob_refcnt is now refs: 1 + N where N >= 0
572 return NULL;
573
574 ret = Py_BuildValue("(O()O)", radix_constructor, state);
when Py_BuildValue() succeeds
ob_refcnt is now refs: 1 + N where N >= 1
575 Py_XINCREF(radix_constructor);
when treating unknown struct PyObject * from radix_python.c:31 as non-NULL
taking False path
576 Py_XINCREF(state);
taking False path
ob_refcnt is now refs: 2 + N where N >= 1
577
578 return ret;
579 }
ob_refcnt of '*state' is 2 too high
was expecting final ob_refcnt to be N + 0 (for some unknown N)
but final ob_refcnt is N + 2
found 3 similar trace(s) to this