From: Eric Wong Date: Mon, 20 Jul 2009 05:08:45 +0000 (-0700) Subject: git svn: fix reparenting when ugly http(s) URLs are used X-Git-Tag: v1.6.4-rc2~10 X-Git-Url: https://git.tokkee.org/?a=commitdiff_plain;h=2a679c7a3148978a3f58f1c12100383638e744c5;p=git.git git svn: fix reparenting when ugly http(s) URLs are used Mishandling of http(s) in need of escaping was causing t9118-git-svn-funky-branch-names to fail when SVN_HTTPD_PORT was defined. This bug was exposed in (but not caused by) commit 0b2af457a49e3b00d47d556d5301934d27909db8 (Fix branch detection when repository root is inaccessible) Signed-off-by: Eric Wong --- diff --git a/git-svn.perl b/git-svn.perl index cfade6345..43c86e85a 100755 --- a/git-svn.perl +++ b/git-svn.perl @@ -4525,10 +4525,12 @@ sub gs_do_switch { my $full_url = $self->{url}; my $old_url = $full_url; - $full_url .= '/' . escape_uri_only($path) if length $path; + $full_url .= '/' . $path if length $path; my ($ra, $reparented); - if ($old_url =~ m#^svn(\+ssh)?://#) { + if ($old_url =~ m#^svn(\+ssh)?://# || + ($full_url =~ m#^https?://# && + escape_url($full_url) ne $full_url)) { $_[0] = undef; $self = undef; $RA = undef;