# HG changeset patch # User Sune Foldager # Date 1345025090 -7200 # Node ID 935831597e16b9d6a842b2b01388af56ab334ea8 # Parent bde1185f406cd2367e3973d827a6d613fd68ec60 rollback: write dirstate branch with correct encoding diff -r bde1185f406c -r 935831597e16 mercurial/localrepo.py --- a/mercurial/localrepo.py Thu Aug 02 19:10:45 2012 +0400 +++ b/mercurial/localrepo.py Wed Aug 15 12:04:50 2012 +0200 @@ -1009,7 +1009,7 @@ util.rename(self.join('undo.dirstate'), self.join('dirstate')) try: branch = self.opener.read('undo.branch') - self.dirstate.setbranch(branch) + self.dirstate.setbranch(encoding.tolocal(branch)) except IOError: ui.warn(_('named branch could not be reset: ' 'current branch is still \'%s\'\n') diff -r bde1185f406c -r 935831597e16 tests/test-encoding.t --- a/tests/test-encoding.t Thu Aug 02 19:10:45 2012 +0400 +++ b/tests/test-encoding.t Wed Aug 15 12:04:50 2012 +0200 @@ -44,6 +44,10 @@ marked working directory as branch \xe9 (esc) (branches are permanent and global, did you want a bookmark?) $ HGENCODING=latin-1 hg ci -m 'latin1 branch' + $ hg -q rollback + $ HGENCODING=latin-1 hg branch + \xe9 (esc) + $ HGENCODING=latin-1 hg ci -m 'latin1 branch' $ rm .hg/branch hg log (ascii)