summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNeal Norwitz <nnorwitz@gmail.com>2007-05-11 05:55:15 (GMT)
committerNeal Norwitz <nnorwitz@gmail.com>2007-05-11 05:55:15 (GMT)
commitd9841039dbd0e37746d46f6e46ce1d82b85a21b3 (patch)
treefee131464aef6441792a56cccf449f73306461e9
parent360496d9c0d3c943089efb1a4fe6c2be062b8601 (diff)
downloadcpython-d9841039dbd0e37746d46f6e46ce1d82b85a21b3.zip
cpython-d9841039dbd0e37746d46f6e46ce1d82b85a21b3.tar.gz
cpython-d9841039dbd0e37746d46f6e46ce1d82b85a21b3.tar.bz2
Don't ever report a failure when the sum of the reference count differences
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.
-rwxr-xr-xLib/test/regrtest.py5
-rwxr-xr-xMisc/build.sh2
2 files changed, 4 insertions, 3 deletions
diff --git a/Lib/test/regrtest.py b/Lib/test/regrtest.py
index ce5f2f6..0045151 100755
--- a/Lib/test/regrtest.py
+++ b/Lib/test/regrtest.py
@@ -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):
diff --git a/Misc/build.sh b/Misc/build.sh
index b153fd5..94950ff 100755
--- a/Misc/build.sh
+++ b/Misc/build.sh
@@ -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