mercurial/changelog.py
changeset 3772 29d91e57d055
parent 3427 f2de6b6bc57a
child 3886 abaee83ce0a6
child 4204 f9bbcebcacea
--- a/mercurial/changelog.py
+++ b/mercurial/changelog.py
@@ -61,10 +61,10 @@ class changelog(revlog):
         if not text:
             return (nullid, "", (0, 0), [], "", {})
         last = text.index("\n\n")
-        desc = text[last + 2:]
+        desc = util.tolocal(text[last + 2:])
         l = text[:last].split('\n')
         manifest = bin(l[0])
-        user = l[1]
+        user = util.tolocal(l[1])
 
         extra_data = l[2].split(' ', 2)
         if len(extra_data) != 3:
@@ -88,6 +88,8 @@ class changelog(revlog):
     def add(self, manifest, list, desc, transaction, p1=None, p2=None,
                   user=None, date=None, extra={}):
 
+        user, desc = util.fromlocal(user), util.fromlocal(desc)
+
         if date:
             parseddate = "%d %d" % util.parsedate(date)
         else: