summaryrefslogtreecommitdiff
path: root/git-svn.perl
diff options
context:
space:
mode:
authorEric Wong <normalperson@yhbt.net>2008-05-11 00:14:49 (GMT)
committerJunio C Hamano <gitster@pobox.com>2008-05-11 16:06:39 (GMT)
commitd1a8d0ea5fb2d4d43d0ea8f2fe45ec1fce7ec4bc (patch)
tree93c66d6f97e35e0b03694782437f4d8d0daa30e3 /git-svn.perl
parent737922aa648c43bc6a61170bee5bfd46ff953f32 (diff)
downloadgit-d1a8d0ea5fb2d4d43d0ea8f2fe45ec1fce7ec4bc.zip
git-d1a8d0ea5fb2d4d43d0ea8f2fe45ec1fce7ec4bc.tar.gz
git-d1a8d0ea5fb2d4d43d0ea8f2fe45ec1fce7ec4bc.tar.bz2
git-svn: fix cloning of HTTP URLs with '+' in their path
With this, git svn clone -s http://svn.gnome.org/svn/gtk+ is successful. Also modified the funky rename test for this, which _does_ include escaped '+' signs for HTTP URLs. SVN seems to accept either "+" or "%2B" in filenames and directories (just not the main URL), so I'll leave it alone for now. Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'git-svn.perl')
-rwxr-xr-xgit-svn.perl2
1 files changed, 1 insertions, 1 deletions
diff --git a/git-svn.perl b/git-svn.perl
index e47b1ea..413e0b1 100755
--- a/git-svn.perl
+++ b/git-svn.perl
@@ -3673,7 +3673,7 @@ sub escape_uri_only {
my ($uri) = @_;
my @tmp;
foreach (split m{/}, $uri) {
- s/([^\w.%-]|%(?![a-fA-F0-9]{2}))/sprintf("%%%02X",ord($1))/eg;
+ s/([^\w.%+-]|%(?![a-fA-F0-9]{2}))/sprintf("%%%02X",ord($1))/eg;
push @tmp, $_;
}
join('/', @tmp);