--- a/mercurial/httprepo.py Mon Nov 16 14:09:31 2009 +0100
+++ b/mercurial/httprepo.py Mon Nov 16 13:35:36 2009 +0100
@@ -11,6 +11,7 @@
import repo, changegroup, statichttprepo, error, url, util
import os, urllib, urllib2, urlparse, zlib, httplib
import errno, socket
+import encoding
def zgenerator(f):
zd = zlib.decompressobj()
@@ -153,6 +154,10 @@
for branchpart in d.splitlines():
branchheads = branchpart.split(' ')
branchname = urllib.unquote(branchheads[0])
+ try:
+ branchname.decode('utf-8', 'strict')
+ except UnicodeDecodeError:
+ branchname = encoding.tolocal(branchname)
branchheads = [bin(x) for x in branchheads[1:]]
branchmap[branchname] = branchheads
return branchmap
--- a/mercurial/sshrepo.py Mon Nov 16 14:09:31 2009 +0100
+++ b/mercurial/sshrepo.py Mon Nov 16 13:35:36 2009 +0100
@@ -7,7 +7,7 @@
from node import bin, hex
from i18n import _
-import repo, util, error
+import repo, util, error, encoding
import re, urllib
class remotelock(object):
@@ -173,6 +173,10 @@
for branchpart in d.splitlines():
branchheads = branchpart.split(' ')
branchname = urllib.unquote(branchheads[0])
+ try:
+ branchname.decode('utf-8', 'strict')
+ except UnicodeDecodeError:
+ branchname = encoding.tolocal(branchname)
branchheads = [bin(x) for x in branchheads[1:]]
branchmap[branchname] = branchheads
return branchmap