diff --git a/lib/redmine/scm/adapters/mercurial/redminehelper.py b/lib/redmine/scm/adapters/mercurial/redminehelper.py index bc18f49a3172be24ab4f85d7b6a89a2b4b0ef57b..9bca6c9bd941e4a17cb4589f5a1ddc603a0a2902 100644 --- a/lib/redmine/scm/adapters/mercurial/redminehelper.py +++ b/lib/redmine/scm/adapters/mercurial/redminehelper.py @@ -120,10 +120,10 @@ def _manifest(ui, repo, path, rev): ui.write('</manifest>\n') def rhannotate(ui, repo, *pats, **opts): - return commands.annotate(ui, repo, *map(urllib.unquote, pats), **opts) + return commands.annotate(ui, repo, *map(urllib.unquote_plus, pats), **opts) def rhcat(ui, repo, file1, *pats, **opts): - return commands.cat(ui, repo, urllib.unquote(file1), *map(urllib.unquote, pats), **opts) + return commands.cat(ui, repo, urllib.unquote_plus(file1), *map(urllib.unquote_plus, pats), **opts) def rhdiff(ui, repo, *pats, **opts): """diff repository (or selected files)""" @@ -132,7 +132,7 @@ def rhdiff(ui, repo, *pats, **opts): base = repo.changectx(change).parents()[0].rev() opts['rev'] = [str(base), change] opts['nodates'] = True - return commands.diff(ui, repo, *map(urllib.unquote, pats), **opts) + return commands.diff(ui, repo, *map(urllib.unquote_plus, pats), **opts) def rhmanifest(ui, repo, path='', **opts): """output the sub-manifest of the specified directory""" @@ -140,7 +140,7 @@ def rhmanifest(ui, repo, path='', **opts): ui.write('<rhmanifest>\n') ui.write('<repository root="%s">\n' % _u(repo.root)) try: - _manifest(ui, repo, urllib.unquote(path), opts.get('rev')) + _manifest(ui, repo, urllib.unquote_plus(path), opts.get('rev')) finally: ui.write('</repository>\n') ui.write('</rhmanifest>\n')