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

Reply via email to