Mercurial > hg
changeset 16759:133a7922a900 stable
win32: fix encoding handling for registry strings (issue3467)
This stopped handling non-ASCII strings in 1.8
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Mon, 21 May 2012 16:32:49 -0500 |
parents | 0a730d3c5aae |
children | ac89a23ca814 |
files | mercurial/win32.py |
diffstat | 1 files changed, 2 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/win32.py Wed May 16 17:02:30 2012 +0900 +++ b/mercurial/win32.py Mon May 21 16:32:49 2012 -0500 @@ -5,7 +5,6 @@ # This software may be used and distributed according to the terms of the # GNU General Public License version 2 or any later version. -import encoding import ctypes, errno, os, struct, subprocess, random _kernel32 = ctypes.windll.kernel32 @@ -290,8 +289,8 @@ if res != _ERROR_SUCCESS: continue if type.value == _REG_SZ: - # never let a Unicode string escape into the wild - return encoding.tolocal(buf.value.encode('UTF-8')) + # string is in ANSI code page, aka local encoding + return buf.value elif type.value == _REG_DWORD: fmt = '<L' s = ctypes.string_at(byref(buf), struct.calcsize(fmt))