Ignore:
Timestamp:
Mar 19, 2014, 11:11:30 AM (11 years ago)
Author:
dmik
Message:

python: Update vendor to 2.7.6.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • python/vendor/current/Lib/pty.py

    r2 r388  
    143143            pty master -> standard output   (master_read)
    144144            standard input -> pty master    (stdin_read)"""
    145     while 1:
    146         rfds, wfds, xfds = select(
    147                 [master_fd, STDIN_FILENO], [], [])
     145    fds = [master_fd, STDIN_FILENO]
     146    while True:
     147        rfds, wfds, xfds = select(fds, [], [])
    148148        if master_fd in rfds:
    149149            data = master_read(master_fd)
    150             os.write(STDOUT_FILENO, data)
     150            if not data:  # Reached EOF.
     151                fds.remove(master_fd)
     152            else:
     153                os.write(STDOUT_FILENO, data)
    151154        if STDIN_FILENO in rfds:
    152155            data = stdin_read(STDIN_FILENO)
    153             _writen(master_fd, data)
     156            if not data:
     157                fds.remove(STDIN_FILENO)
     158            else:
     159                _writen(master_fd, data)
    154160
    155161def spawn(argv, master_read=_read, stdin_read=_read):
Note: See TracChangeset for help on using the changeset viewer.