[Python-checkins] bpo-34130: Fix test_signal.test_socket() (GH-8326)
Victor Stinner
webhook-mailer at python.org
Wed Jul 18 11:44:08 EDT 2018
https://github.com/python/cpython/commit/99bb6df66a42625367c4f38e6802c8bb527baf4a
commit: 99bb6df66a42625367c4f38e6802c8bb527baf4a
branch: master
author: Victor Stinner <vstinner at redhat.com>
committer: GitHub <noreply at github.com>
date: 2018-07-18T17:43:57+02:00
summary:
bpo-34130: Fix test_signal.test_socket() (GH-8326)
test_signal.test_socket(): On Windows, sometimes even if the C signal handler
succeed to write the signal number into the write end of the socketpair, the
test fails with a BlockingIOError on the non-blocking read.recv(1) because the
read end of the socketpair didn't receive the byte yet.
Fix the race condition on Windows by setting the read end as blocking.
files:
M Lib/test/test_signal.py
diff --git a/Lib/test/test_signal.py b/Lib/test/test_signal.py
index 354c3fde168c..e69db79909cc 100644
--- a/Lib/test/test_signal.py
+++ b/Lib/test/test_signal.py
@@ -392,7 +392,6 @@ def handler(signum, frame):
signal.signal(signum, handler)
read, write = socket.socketpair()
- read.setblocking(False)
write.setblocking(False)
signal.set_wakeup_fd(write.fileno())
More information about the Python-checkins
mailing list