Merged revisions 65773 via svnmerge from

svn+ssh://pythondev@svn.python.org/python/trunk

........
  r65773 | antoine.pitrou | 2008-08-17 19:01:49 +0200 (dim., 17 août 2008) | 3 lines

  #3556: test_raiseMemError consumes an insane amount of memory
........
This commit is contained in:
Antoine Pitrou 2008-08-17 17:06:51 +00:00
parent 43e45192bd
commit 3db3e87434
1 changed files with 4 additions and 9 deletions

View File

@ -1155,20 +1155,15 @@ class UnicodeTest(
return
self.assertRaises(OverflowError, 't\tt\t'.expandtabs, sys.maxsize)
def test_raiseMemError(self):
# Ensure that the freelist contains a consistent object, even
# when a string allocation fails with a MemoryError.
# This used to crash the interpreter,
# or leak references when the number was smaller.
try:
"a" * (sys.maxsize // 2 - 100)
except MemoryError:
pass
try:
"a" * (sys.maxsize // 2 - 100)
except MemoryError:
pass
alloc = lambda: "a" * (sys.maxsize - 100)
self.assertRaises(MemoryError, alloc)
self.assertRaises(MemoryError, alloc)
def test_main():
support.run_unittest(__name__)