1603: Encoded URLs are not handled correctly

davei*****@gmai***** (Google Code) (Is this you? Claim this profile.)
Sept. 26, 2010
http://reviews.reviewboard.org/


What version are you running? 1.0.6

What's the URL of the page this enhancement relates to, if any?
https://<omitted>/review/r/24/diff/#index_header


Describe the enhancement and the motivation for it.

My Repository names have spaces in them, and when I encode the space as a 
%20 in the URL, ReviewBoard returns the following exception

Could not open the requested SVN filesystem

Traceback (most recent call last):
  File "/usr/lib/python2.5/site-packages/ReviewBoard-1.0.6-
py2.5.egg/reviewboard/diffviewer/views.py", line 153, in view_diff
    interdiffset, highlighting, True)
  File "/usr/lib/python2.5/site-packages/ReviewBoard-1.0.6-
py2.5.egg/reviewboard/diffviewer/diffutils.py", line 623, in get_diff_files
    large_data=True)
  File "/usr/lib/python2.5/site-packages/Djblets-0.5.8-
py2.5.egg/djblets/util/misc.py", line 162, in cache_memoize
    data = lookup_callable()
  File "/usr/lib/python2.5/site-packages/ReviewBoard-1.0.6-
py2.5.egg/reviewboard/diffviewer/diffutils.py", line 622, in <lambda>
    enable_syntax_highlighting),
  File "/usr/lib/python2.5/site-packages/ReviewBoard-1.0.6-
py2.5.egg/reviewboard/diffviewer/diffutils.py", line 344, in get_chunks
    old = get_original_file(filediff)
  File "/usr/lib/python2.5/site-packages/ReviewBoard-1.0.6-
py2.5.egg/reviewboard/diffviewer/diffutils.py", line 251, in 
get_original_file
    large_data=True)[0]
  File "/usr/lib/python2.5/site-packages/Djblets-0.5.8-
py2.5.egg/djblets/util/misc.py", line 162, in cache_memoize
    data = lookup_callable()
  File "/usr/lib/python2.5/site-packages/ReviewBoard-1.0.6-
py2.5.egg/reviewboard/diffviewer/diffutils.py", line 250, in <lambda>
    data = cache_memoize(key, lambda: [fetch_file(file, revision)],
  File "/usr/lib/python2.5/site-packages/ReviewBoard-1.0.6-
py2.5.egg/reviewboard/diffviewer/diffutils.py", line 229, in fetch_file
    data = tool.get_file(file, revision)
  File "/usr/lib/python2.5/site-packages/ReviewBoard-1.0.6-
py2.5.egg/reviewboard/scmtools/svn.py", line 118, in get_file
    raise SCMError(e)
SCMError: Could not open the requested SVN filesystem

What operating system are you using? What browser?


Please provide any additional information below.
chipx86
#1 chipx86
Will investigate for 1.0.7.
  • +Confirmed
  • -Type-Enhancement
    +Type-Defect
    +Milestone-Release1.0.x
    +Component-SCMTools
chipx86
#2 chipx86
Can you show me what the repository path looks like? And what happens if you use
spaces directly instead of %20?
  • -Confirmed
    +NeedInfo
david
#3 david
  • -NeedInfo
    +Incomplete
#4 davei*****@gmai***** (Google Code) (Is this you? Claim this profile.)
This is still an issue in 1.6.1, it's specifically in line 118, diff included below


118c118
<                                                 urllib.quote(pathtuple[2]),
---
>                                                 urllib.quote(urllib.unquote(pathtuple[2])),