diff --git a/reviewboard/scmtools/svn.py b/reviewboard/scmtools/svn.py
index f3cc0b81659bda69a8921413c9a8f86cd4456019..20fc4dca5b53ae0d6daa1c9dcccb17e1289a39c4 100644
--- a/reviewboard/scmtools/svn.py
+++ b/reviewboard/scmtools/svn.py
@@ -113,9 +113,12 @@ class SVNTool(SCMTool):
             # escape the path part of the URL.
             if self.client.is_url(normpath):
                 pathtuple = urlparse.urlsplit(normpath)
+                path = pathtuple[2]
+                if isinstance(path, unicode):
+                    path = path.encode('utf-8', 'ignore')
                 normpath = urlparse.urlunsplit((pathtuple[0],
                                                 pathtuple[1],
-                                                urllib.quote(pathtuple[2]),
+                                                urllib.quote(path),
                                                 '',''))
 
             normrev  = self.__normalize_revision(revision)
