--- a/mercurial/ui.py Tue Mar 06 02:05:25 2018 -0600
+++ b/mercurial/ui.py Tue Mar 06 02:14:11 2018 -0600
@@ -1278,7 +1278,13 @@
# prompt ' ' must exist; otherwise readline may delete entire line
# - http://bugs.python.org/issue12833
with self.timeblockedsection('stdio'):
- line = util.bytesinput(self.fin, self.fout, r' ')
+ sin, sout = sys.stdin, sys.stdout
+ try:
+ sys.stdin = encoding.strio(self.fin)
+ sys.stdout = encoding.strio(self.fout)
+ line = encoding.strtolocal(pycompat.rawinput(r' '))
+ finally:
+ sys.stdin, sys.stdout = sin, sout
# When stdin is in binary mode on Windows, it can cause
# raw_input() to emit an extra trailing carriage return