https://github.com/python/cpython/commit/1f9d20bbd4fed601e7caf76a12e52d35c8ae2b14
commit: 1f9d20bbd4fed601e7caf76a12e52d35c8ae2b14
branch: main
author: Victor Stinner <[email protected]>
committer: vstinner <[email protected]>
date: 2026-07-20T00:19:32+02:00
summary:
gh-154137: Fix handle leak in test_winapi (#154201)
Make sure that events handles are closed.
files:
M Lib/test/test_winapi.py
diff --git a/Lib/test/test_winapi.py b/Lib/test/test_winapi.py
index a1c0b80d47e4d4..0ae03a3bf505f7 100644
--- a/Lib/test/test_winapi.py
+++ b/Lib/test/test_winapi.py
@@ -12,9 +12,16 @@
MAXIMUM_WAIT_OBJECTS = 64
MAXIMUM_BATCHED_WAIT_OBJECTS = (MAXIMUM_WAIT_OBJECTS - 1) ** 2
+
+def close_events(events):
+ for handle in events:
+ _winapi.CloseHandle(handle)
+
+
class WinAPIBatchedWaitForMultipleObjectsTests(unittest.TestCase):
def _events_waitall_test(self, n):
evts = [_winapi.CreateEventW(0, False, False, None) for _ in range(n)]
+ self.addCleanup(close_events, evts)
with self.assertRaises(TimeoutError):
_winapi.BatchedWaitForMultipleObjects(evts, True, 100)
@@ -42,6 +49,7 @@ def _events_waitall_test(self, n):
def _events_waitany_test(self, n):
evts = [_winapi.CreateEventW(0, False, False, None) for _ in range(n)]
+ self.addCleanup(close_events, evts)
with self.assertRaises(TimeoutError):
_winapi.BatchedWaitForMultipleObjects(evts, False, 100)
_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3//lists/python-checkins.python.org
Member address: [email protected]