Index: reviewboard/scmtools/hg.py
===================================================================
--- reviewboard/scmtools/hg.py (revision 1414)
+++ reviewboard/scmtools/hg.py (working copy)
@@ -15,7 +15,7 @@
self.client = HgClient(repository.path)
def get_file(self, path, revision=HEAD):
- return self.client.cat_file(path, str(revision))
+ return self.client.cat_file(path.encode('utf8'), str(revision))
def parse_diff_revision(self, file_str, revision_str):
revision = revision_str
@@ -40,17 +40,25 @@
"""
def parse_special_header(self, linenum, info):
+ # XXX: does not handle git style diffs
if self.lines[linenum].startswith("diff -r"):
- # should contain "diff -r aaa [-r bbb] filename"
+ # diff between two revisions are in the following form:
+ # "diff -r abcdef123456 -r 123456abcdef filename"
+ # diff between a revision and the working copy are like:
+