comparison mercurial/subrepo.py @ 41517:549f956ba2a9

py3: don't use universal_newlines in svnsubrepo On Python 3, it means text=True without any specific encoding, which is pretty bad. Instead, use util.fromnativeeol() to translate CR+LF to LF without encoding conversion.
author Yuya Nishihara <yuya@tcha.org>
date Sat, 02 Feb 2019 15:26:51 +0900
parents d65519e5dd04
children 13a6dd952ffe
comparison
equal deleted inserted replaced
41516:d65519e5dd04 41517:549f956ba2a9
956 del env['LC_ALL'] 956 del env['LC_ALL']
957 env['LC_MESSAGES'] = 'C' 957 env['LC_MESSAGES'] = 'C'
958 p = subprocess.Popen(pycompat.rapply(procutil.tonativestr, cmd), 958 p = subprocess.Popen(pycompat.rapply(procutil.tonativestr, cmd),
959 bufsize=-1, close_fds=procutil.closefds, 959 bufsize=-1, close_fds=procutil.closefds,
960 stdout=subprocess.PIPE, stderr=subprocess.PIPE, 960 stdout=subprocess.PIPE, stderr=subprocess.PIPE,
961 universal_newlines=True,
962 env=procutil.tonativeenv(env), **extrakw) 961 env=procutil.tonativeenv(env), **extrakw)
963 stdout, stderr = p.communicate() 962 stdout, stderr = map(util.fromnativeeol, p.communicate())
964 stdout, stderr = pycompat.fsencode(stdout), pycompat.fsencode(stderr)
965 stderr = stderr.strip() 963 stderr = stderr.strip()
966 if not failok: 964 if not failok:
967 if p.returncode: 965 if p.returncode:
968 raise error.Abort(stderr or 'exited with code %d' 966 raise error.Abort(stderr or 'exited with code %d'
969 % p.returncode) 967 % p.returncode)