# HG changeset patch # User Henrik Stuart # Date 1258374936 -3600 # Node ID 0262bb59016f5e09843931593ba9272460855a4c # Parent 9c43089b372a3154d7152222c634111ee0c0ee17 support encoding fallback in branchmap to maintain compatibility with 1.3.x diff -r 9c43089b372a -r 0262bb59016f mercurial/httprepo.py --- 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 diff -r 9c43089b372a -r 0262bb59016f mercurial/sshrepo.py --- 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