Skip to content

Commit a11a244

Browse files
committed
Remove refcount asserts in test_oserror_reinit_leak
1 parent 63ef6dd commit a11a244

1 file changed

Lines changed: 2 additions & 18 deletions

File tree

Lib/test/test_exceptions.py

Lines changed: 2 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1715,31 +1715,15 @@ def inner():
17151715
self.assertEqual(wr(), None)
17161716

17171717
def test_oserror_reinit_leak(self):
1718-
msg = "some error message"
1719-
filename = "some filename"
1720-
filename2 = "some filename 2"
1721-
1718+
# gh-150988: Check for memory leak when re-initializing OSError
17221719
class LeakingOSError(OSError):
17231720
def __init__(self, code, message, filename, filename2):
17241721
self.strerror = message
17251722
self.filename = filename
17261723
self.filename2 = filename2
17271724
super().__init__(code, message, filename, None, filename2)
17281725

1729-
refcount_msg = sys.getrefcount(msg)
1730-
refcount_filename = sys.getrefcount(filename)
1731-
refcount_filename2 = sys.getrefcount(filename2)
1732-
1733-
for _ in range(5):
1734-
try:
1735-
raise LeakingOSError(1, msg, filename, filename2)
1736-
except OSError:
1737-
pass
1738-
1739-
gc_collect()
1740-
self.assertEqual(sys.getrefcount(msg), refcount_msg)
1741-
self.assertEqual(sys.getrefcount(filename), refcount_filename)
1742-
self.assertEqual(sys.getrefcount(filename2), refcount_filename2)
1726+
LeakingOSError(1, "some message", "filename.py", "filename2.py")
17431727

17441728
def test_errno_ENOTDIR(self):
17451729
# Issue #12802: "not a directory" errors are ENOTDIR even on Windows

0 commit comments

Comments
 (0)