aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFelipe Contreras <felipe.contreras@gmail.com>2012-11-04 03:13:27 +0100
committerJeff King <peff@peff.net>2012-11-04 08:35:20 -0500
commitff247d9e56366a3b03d8ca926fd88b51d3c2df52 (patch)
tree5fd5d922e40a26d2a31ad053517bdadcc65c9815
parentffaf84c6631e1ee381ca0d04b363ee5c82fe20ac (diff)
downloadgit-ff247d9e56366a3b03d8ca926fd88b51d3c2df52.tar.gz
git-ff247d9e56366a3b03d8ca926fd88b51d3c2df52.tar.xz
remote-hg: make sure the encoding is correct
Independently of the environment. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Jeff King <peff@peff.net>
-rwxr-xr-xcontrib/remote-helpers/git-remote-hg12
1 files changed, 11 insertions, 1 deletions
diff --git a/contrib/remote-helpers/git-remote-hg b/contrib/remote-helpers/git-remote-hg
index a5023c92f..503a9fc32 100755
--- a/contrib/remote-helpers/git-remote-hg
+++ b/contrib/remote-helpers/git-remote-hg
@@ -9,7 +9,7 @@
# Then you can clone with:
# git clone hg::/path/to/mercurial/repo/
-from mercurial import hg, ui, bookmarks, context, util
+from mercurial import hg, ui, bookmarks, context, util, encoding
import re
import sys
@@ -391,6 +391,9 @@ def do_import(parser):
print "feature export-marks=%s" % path
sys.stdout.flush()
+ tmp = encoding.encoding
+ encoding.encoding = 'utf-8'
+
# lets get all the import lines
while parser.check('import'):
ref = parser[1]
@@ -409,6 +412,8 @@ def do_import(parser):
parser.next()
+ encoding.encoding = tmp
+
print 'done'
def parse_blob(parser):
@@ -491,8 +496,13 @@ def parse_commit(parser):
files.keys(), getfilectx,
user, (date, tz), extra)
+ tmp = encoding.encoding
+ encoding.encoding = 'utf-8'
+
node = repo.commitctx(ctx)
+ encoding.encoding = tmp
+
rev = repo[node].rev()
parsed_refs[ref] = node