File: src/BTrees/BTreeModuleTemplate.c
Function: PreviousBucket
Error: ob_refcnt of '*trailing' is 1 too low
312 static int
313 PreviousBucket(Bucket **current, Bucket *first)
314 {
taking True path
315     Bucket *trailing = NULL;    /* first travels; trailing follows it */
316     int result = 0;
317 
318     assert(current && *current && first);
319     if (first == *current)
when treating unknown struct Bucket * * from src/BTrees/BTreeModuleTemplate.c:313 as non-NULL
when taking False path
320         return 0;
321 
322     do {
323         trailing = first;
324 	PER_USE_OR_RETURN(first, -1);
when considering range: -128 <= value <= -2
taking False path
when considering value == (signed char)0 from src/BTrees/BTreeModuleTemplate.c:324
taking True path
325         first = first->next;
326 
327 
328 
329 
330 
331 
332 
333     ((trailing)->state==cPersistent_STICKY_STATE
334      &&
335      ((trailing)->state=cPersistent_UPTODATE_STATE));
336 
337     PER_ACCESSED(trailing);
when treating unknown struct cPersistenceCAPIstruct * from src/persistent/cPersistence.h:112 as non-NULL
calling unknown void (*) (struct cPersistentObject *) from src/BTrees/BTreeModuleTemplate.c:337
338 
339 
340 
341 
342 
343 	if (first == *current) {
when taking True path
344 	    *current = trailing;
'*trailing' is now referenced by 1 non-stack value(s): heap-region-238
345 	    result = 1;
346 	    break;
347 	}
348     } while (first);
349 
350     return result;
351 }
ob_refcnt of '*trailing' is 1 too low
was expecting final ob_refcnt to be N + 1 (for some unknown N)
due to object being referenced by: heap-region-238
but final ob_refcnt is N + 0
found 3 similar trace(s) to this