422 static PyObject *
423 ADNS_State_submit(
424 ADNS_Stateobject *self,
425 PyObject *args
426 )
427 {
428 char *owner;
429 adns_rrtype type = 0;
430 adns_queryflags flags = 0;
431 int r;
432 ADNS_Queryobject *o;
433 if (!PyArg_ParseTuple(args, "si|i", &owner, &type, &flags))
when PyArg_ParseTuple() succeeds
taking False path
434 return NULL;
435 o = newADNS_Queryobject(self);
when newADNS_Queryobject() succeeds
new ref from (unknown) newADNS_Queryobject allocated at: o = newADNS_Queryobject(self);
ob_refcnt is now refs: 1 + N where N >= 0
436 Py_BEGIN_ALLOW_THREADS;
releasing the GIL by calling PyEval_SaveThread()
437 r = adns_submit(self->state, owner, type, flags, o, &o->query);
438 Py_END_ALLOW_THREADS;
reacquiring the GIL by calling PyEval_RestoreThread()
439 if (r) {
when considering range: -0x80000000 <= value <= -1
taking True path
440 PyErr_SetString(ErrorObject, strerror(r));
calling PyErr_SetString()
441 return NULL;
442 }
443 return (PyObject *) o;
444 }
ob_refcnt of '*o' is 1 too high
was expecting final ob_refcnt to be N + 0 (for some unknown N)
but final ob_refcnt is N + 1
found 1 similar trace(s) to this