Put method-wrappers into trashcan. Fixes #927248.
diff --git a/Lib/test/test_descr.py b/Lib/test/test_descr.py
index d9249b6..6484ef1 100644
--- a/Lib/test/test_descr.py
+++ b/Lib/test/test_descr.py
@@ -3966,6 +3966,13 @@
o.whatever = Provoker(o)
del o
+def wrapper_segfault():
+ # SF 927248: deeply nested wrappers could cause stack overflow
+ f = lambda:None
+ for i in xrange(1000000):
+ f = f.__call__
+ f = None
+
# Fix SF #762455, segfault when sys.stdout is changed in getattr
def filefault():
if verbose:
@@ -4121,6 +4128,7 @@
def test_main():
weakref_segfault() # Must be first, somehow
+ wrapper_segfault()
do_this_first()
class_docstrings()
lists()