diff options
Diffstat (limited to 'pym/portage/util/_async/PipeLogger.py')
-rw-r--r-- | pym/portage/util/_async/PipeLogger.py | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/pym/portage/util/_async/PipeLogger.py b/pym/portage/util/_async/PipeLogger.py index 376ebfef7..5464879ff 100644 --- a/pym/portage/util/_async/PipeLogger.py +++ b/pym/portage/util/_async/PipeLogger.py @@ -86,14 +86,12 @@ class PipeLogger(AbstractPollTask): else: if not background and stdout_fd is not None: - write_successful = False failures = 0 - while True: + stdout_buf = buf + while stdout_buf: try: - if not write_successful: - os.write(stdout_fd, buf) - write_successful = True - break + stdout_buf = \ + stdout_buf[os.write(stdout_fd, stdout_buf):] except OSError as e: if e.errno != errno.EAGAIN: raise |