don't wait for stdin to close

This commit is contained in:
Gregor Kleen 2023-05-29 17:48:30 +02:00
parent 6bb276b509
commit 22000ec4c0

View File

@ -484,7 +484,7 @@ def main():
proc.stderr, proc.stderr,
select.POLLIN | select.POLLPRI | select.POLLHUP | select.POLLERR, select.POLLIN | select.POLLPRI | select.POLLHUP | select.POLLERR,
) )
pollc = 3 pollc = 2
# logger.debug("First poll...") # logger.debug("First poll...")
events = poll.poll() events = poll.poll()
# logger.debug("Done, %d event(s)", len(events)) # logger.debug("Done, %d event(s)", len(events))
@ -569,10 +569,11 @@ def main():
logger.debug("STDIN closed") logger.debug("STDIN closed")
if rfd == stdout_fd: if rfd == stdout_fd:
logger.debug("STDOUT closed") logger.debug("STDOUT closed")
pollc -= 1
if rfd == stderr_fd: if rfd == stderr_fd:
logger.debug("STDERR closed") logger.debug("STDERR closed")
pollc -= 1
poll.unregister(rfd) poll.unregister(rfd)
pollc -= 1
if pollc > 0: if pollc > 0:
# logger.debug("Poll...") # logger.debug("Poll...")