Read about our upcoming Code of Conduct on this issue

Commit 5fe8b843 authored by Manuel Jacob's avatar Manuel Jacob
Browse files

procutil: define LineBufferedWrapper on all Python versions

There’s nothing Python 3-only about LineBufferedWrapper. In the future, we may
want to use it on Windows, to work around missing line-buffering support.
parent c7d109c400a4
......@@ -49,23 +49,22 @@ def isatty(fp):
return False
if pycompat.ispy3:
class LineBufferedWrapper(object):
def __init__(self, orig):
self.orig = orig
class LineBufferedWrapper(object):
def __init__(self, orig):
self.orig = orig
def __getattr__(self, attr):
return getattr(self.orig, attr)
def __getattr__(self, attr):
return getattr(self.orig, attr)
def write(self, s):
orig = self.orig
res = orig.write(s)
if s.endswith(b'\n'):
orig.flush()
return res
def write(self, s):
orig = self.orig
res = orig.write(s)
if s.endswith(b'\n'):
orig.flush()
return res
io.BufferedIOBase.register(LineBufferedWrapper)
io.BufferedIOBase.register(LineBufferedWrapper)
# glibc determines buffering on first write to stdout - if we replace a TTY
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment