--- a/ForgeSVN/forgesvn/model/svn.py
+++ b/ForgeSVN/forgesvn/model/svn.py
@@ -16,6 +16,7 @@
from ming.utils import LazyProperty
from allura import model as M
+from allura.lib import helpers as h
from allura.model.repository import GitLikeTree
log = logging.getLogger(__name__)
@@ -211,19 +212,19 @@
root = GitLikeTree.from_tree(parent_ci.tree)
for path in log_entry.changed_paths:
if path.action == 'D':
- root.del_blob(path.path)
+ root.del_blob(h.really_unicode(path.path))
else:
try:
data = self._svn.cat(
- self._url + path.path,
+ self._url + h.really_unicode(path.path),
revision=log_entry.revision)
oid = sha1('blob\n' + data).hexdigest()
- root.set_blob(path.path, oid)
+ root.set_blob(h.really_unicode(path.path), oid)
except pysvn.ClientError:
# probably a directory; create an empty file named '.'
data = ''
oid = sha1(data).hexdigest()
- root.set_blob(path.path + '/.', oid)
+ root.set_blob(h.really_unicode(path.path) + '/.', oid)
return root
def _refresh_tree(self, tree, obj):