Mercurial > hg
changeset 39910:6e2c8f7f894e
py3: byteify windows.shelltocmdexe()
This makes test-doctest.py happy on Windows.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Sat, 29 Sep 2018 20:57:49 -0400 |
parents | 0f8ff3ff5d5c |
children | d1bc6cf2be69 |
files | mercurial/windows.py |
diffstat | 1 files changed, 7 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/windows.py Sat Sep 29 20:33:52 2018 -0400 +++ b/mercurial/windows.py Sat Sep 29 20:57:49 2018 -0400 @@ -314,7 +314,7 @@ index = 0 pathlen = len(path) while index < pathlen: - c = path[index] + c = path[index:index + 1] if c == b'\'': # no expansion within single quotes path = path[index + 1:] pathlen = len(path) @@ -344,7 +344,7 @@ var = path[:index] # See below for why empty variables are handled specially - if env.get(var, '') != '': + if env.get(var, b'') != b'': res += b'%' + var + b'%' else: res += b'${' + var + b'}' @@ -365,20 +365,20 @@ # VAR, and that really confuses things like revset expressions. # OTOH, if it's left in Unix format and the hook runs sh.exe, it # will substitute to an empty string, and everything is happy. - if env.get(var, '') != '': + if env.get(var, b'') != b'': res += b'%' + var + b'%' else: res += b'$' + var - if c != '': + if c != b'': index -= 1 elif (c == b'~' and index + 1 < pathlen - and path[index + 1] in (b'\\', b'/')): + and path[index + 1:index + 2] in (b'\\', b'/')): res += "%USERPROFILE%" elif (c == b'\\' and index + 1 < pathlen - and path[index + 1] in (b'$', b'~')): + and path[index + 1:index + 2] in (b'$', b'~')): # Skip '\', but only if it is escaping $ or ~ - res += path[index + 1] + res += path[index + 1:index + 2] index += 1 else: res += c