Martin Panter added the comment: Aha! So perhaps Windows can accept a small amount of data into its pipe buffer even if we know the pipe has been broken. That kind of makes sense. Test case could be modified to:
proc = subprocess.Popen([...], bufsize=support.PIPE_MAX_SIZE, stdin=subprocess.PIPE, stdout=subprocess.PIPE) proc.stdout.read() # Make sure subprocess has closed its input proc.stdin.write(bytes(support.PIPE_MAX_SIZE)) self.assertIsNone(proc.returncode) # Expect EPIPE under POSIX and EINVAL under Windows self.assertRaises(OSError, proc.__exit__, None, None, None) ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue21619> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com