STINNER Victor <victor.stin...@haypocalc.com> added the comment:

C:\Python32>python
    Python 3.2 ... on win32
    >>> import sys
    >>> for line in sys.stdin:
    ...     print(repr(line))
    ...
    hello
    'hello\r\n'
    ^Z

Oh yes, I confirm that there is a second bug: sys.stdin doesn't translate \r\n 
to \n, whereas sys.stdin is a text file.

Attached patch fixes both issues.

> Is it possible to add some tests for input()?

input() has already tests, but the bug was not detected because the test uses a 
mockup, not a subprocess. Moreover, I don't think that it is possible to test 
input() for the TTY case. It is not easy to test a TTY, especially on Windows.

If anyone knows how to reproduce the two bugs with a short Python script, I can 
try to convert it into a test.

> Also the patch uses tabs instead of spaces.

Yeah, I hate producing patches on Windows. Fixed in the new patch (prepared on 
Linux).

----------
Added file: http://bugs.python.org/file20853/issue11272.patch

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue11272>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to