New submission from Jack O'Connor: Setting stdin=PIPE and then calling communicate(b"") should close the child's stdin immediately, similar to stdin=DEVNULL. Instead, communicate() treats b"" like None and leaves the child's stdin open, which makes the child hang forever if it tries to read anything.
I have a PR open with a fix and a test: https://github.com/python/cpython/pull/33 ---------- components: asyncio messages: 264212 nosy: gvanrossum, haypo, oconnor663, yselivanov priority: normal severity: normal status: open title: asyncio.subprocess's communicate() method mishandles empty input bytes type: behavior versions: Python 3.5, Python 3.6 _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue26848> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com