diff --git a/mercurial/util.py b/mercurial/util.py --- a/mercurial/util.py +++ b/mercurial/util.py @@ -2190,6 +2190,11 @@ def wrap(line, width, initindent='', han subsequent_indent=hangindent) return wrapper.fill(line).encode(encoding.encoding) +def iterfile(fp): + """like fp.__iter__ but does not have issues with EINTR. Python 2.7.12 is + known to have such issues.""" + return iter(fp.readline, '') + def iterlines(iterator): for chunk in iterator: for line in chunk.splitlines():