--- a/Plugins/VcsPlugins/vcsPySvn/SvnLogDialog.py Wed Dec 04 22:08:03 2013 +0100 +++ b/Plugins/VcsPlugins/vcsPySvn/SvnLogDialog.py Fri Dec 13 22:45:47 2013 +0100 @@ -10,6 +10,7 @@ from __future__ import unicode_literals # __IGNORE_WARNING__ import os +import sys import pysvn @@ -151,8 +152,13 @@ dstr += '<br />\n' self.contents.insertHtml(dstr) + author = log["author"] + message = log["message"] + if sys.version_info[0] == 2: + author = author.decode('utf-8') + message = message.decode('utf-8') dstr = self.trUtf8('<i>author: {0}</i><br />\n')\ - .format(log["author"]) + .format(author) self.contents.insertHtml(dstr) dstr = self.trUtf8('<i>date: {0}</i><br />\n')\ @@ -161,20 +167,26 @@ self.contents.insertHtml('<br />\n') - for line in log["message"].splitlines(): + for line in message.splitlines(): self.contents.insertHtml(Utilities.html_encode(line)) self.contents.insertHtml('<br />\n') if len(log['changed_paths']) > 0: self.contents.insertHtml('<br />\n') for changeInfo in log['changed_paths']: - dstr = '{0} {1}'\ - .format(self.flags[changeInfo["action"]], - changeInfo["path"]) + action = changeInfo["action"] + path = changeInfo["path"] + if sys.version_info[0] == 2: + action = action.decode('utf-8') + path = path.decode('utf-8') + dstr = '{0} {1}'.format(self.flags[action], path) if changeInfo["copyfrom_path"] is not None: + copyfrom_path = changeInfo["copyfrom_path"] + if sys.version_info[0] == 2: + copyfrom_path = copyfrom_path.decode('utf-8') dstr += self.trUtf8( " (copied from {0}, revision {1})")\ - .format(changeInfo["copyfrom_path"], + .format(copyfrom_path, changeInfo["copyfrom_revision"].number) dstr += '<br />\n' self.contents.insertHtml(dstr)