]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Don't ever report a failure when the sum of the reference count differences
authorNeal Norwitz <nnorwitz@gmail.com>
Fri, 11 May 2007 05:55:15 +0000 (05:55 +0000)
committerNeal Norwitz <nnorwitz@gmail.com>
Fri, 11 May 2007 05:55:15 +0000 (05:55 +0000)
are zero.  This should help reduce the false positives.

The message about references leaking is maintained to provide as much
info as possible rather than simply suppressing the message at the source.

Lib/test/regrtest.py
Misc/build.sh

index ce5f2f608eb37f27bca1a1f118a9fa6adebde5d8..00451514b4b2de2b1e949d1215c56cc9386b9e04 100755 (executable)
@@ -682,9 +682,10 @@ def dash_R(the_module, test, indirect_test, huntrleaks):
             deltas.append(sys.gettotalrefcount() - rc - 2)
     print >> sys.stderr
     if any(deltas):
-        print >> sys.stderr, test, 'leaked', deltas, 'references'
+        msg = '%s leaked %s references, sum=%s' % (test, deltas, sum(deltas))
+        print >> sys.stderr, msg
         refrep = open(fname, "a")
-        print >> refrep, test, 'leaked', deltas, 'references'
+        print >> refrep, msg
         refrep.close()
 
 def dash_R_cleanup(fs, ps, pic):
index b153fd523d73d58aadcb9e9421dc17064374367f..94950ffd871398c8da1ca1ade709637e3c819d7e 100755 (executable)
@@ -192,7 +192,7 @@ if [ $err = 0 -a "$BUILD_DISABLED" != "yes" ]; then
             ## ensure that the reflog exists so the grep doesn't fail
             touch $REFLOG
             $PYTHON $REGRTEST_ARGS -R 4:3:$REFLOG -u network $LEAKY_SKIPS >& build/$F
-            NUM_FAILURES=`egrep -vc "$LEAKY_TESTS" $REFLOG`
+            NUM_FAILURES=`egrep -vc "($LEAKY_TESTS|sum=0)" $REFLOG`
             update_status "Testing refleaks ($NUM_FAILURES failures)" "$F" $start
             mail_on_failure "refleak" $REFLOG