further testing indicates that the simplified version of the test

(re-using an existing test object class) no longer triggered the
original segfault when the fix was backed out; restoring the local
test object class to make the test effective

the assignment of the ref created at the end does not affect the test,
since the segfault happended before weakref.ref() returned; removing
the assignment
This commit is contained in:
Fred Drake 2004-02-13 19:21:57 +00:00
parent 7a6d297bda
commit 55cf434735
1 changed files with 6 additions and 4 deletions

View File

@ -602,21 +602,23 @@ class ReferencesTestCase(TestBase):
thresholds = gc.get_threshold()
gc.set_threshold(1, 1, 1)
gc.collect()
class A:
pass
def callback(*args):
pass
referenced = C()
referenced = A()
a = C()
a = A()
a.a = a
a.wr = makeref(referenced)
try:
# now make sure the object and the ref get labeled as
# cyclic trash:
a = C()
a.wrc = weakref.ref(referenced, callback)
a = A()
weakref.ref(referenced, callback)
finally:
gc.set_threshold(*thresholds)