87 int asyncns_del_query(Asyncns *asyncns, Query *query)
88 {
89 int i, j;
90 unsigned char found = 0;
91 for(i=0 ; i<asyncns->nqueries ; i++)
92 {
when considering range: 1 <= value <= 0x7fffffff
taking True path
when considering range: -0x80000000 <= value <= 1
taking False path
93 if(asyncns->queries[i] == query)
94 {
when treating unknown struct Query * * from asyncns.c:94 as non-NULL
when taking True path
95 found = 1;
96 for(j=i ; j<asyncns->nqueries - 1 ; j++)
97 {
when considering range: -0x80000000 <= value <= 0
taking False path
98 asyncns->queries[j] = asyncns->queries[j+1];
99 }
100 asyncns->nqueries--;
101 }
102 }
103 if(found)
104 {
taking True path
105 asyncns->queries = (Query **)realloc(asyncns->queries, asyncns->nqueries
106 * sizeof(*(asyncns->queries)));
107 Py_DECREF(query);
108 }
when taking True path
ob_refcnt is now refs: -1 + N where N >= 1
109 return found?0:-1;
110 }
taking True path
returning
ob_refcnt of '*query' is 1 too low
was expecting final ob_refcnt to be N + 0 (for some unknown N)
but final ob_refcnt is N + -1
found 3 similar trace(s) to this
111