diff options
author | Michael G. Schwern <schwern@pobox.com> | 2012-07-28 13:47:52 +0400 |
---|---|---|
committer | Eric Wong <normalperson@yhbt.net> | 2012-08-03 01:46:06 +0400 |
commit | 5eaa1fd086e826b1ac8d9346a740527edbdb3c34 (patch) | |
tree | 9e74ea2b6b8b6a655b5920ae96d34388e69eb322 | |
parent | 705b49cb81351020b57f9356487e9b3fdeea1e40 (diff) |
git-svn: remove ad-hoc canonicalizations
[ew: commit title]
Signed-off-by: Eric Wong <normalperson@yhbt.net>
-rwxr-xr-x | git-svn.perl | 8 | ||||
-rw-r--r-- | perl/Git/SVN.pm | 1 |
2 files changed, 4 insertions, 5 deletions
diff --git a/git-svn.perl b/git-svn.perl index 3d120d5bc4..56d1ba712a 100755 --- a/git-svn.perl +++ b/git-svn.perl @@ -36,6 +36,7 @@ use Git::SVN::Utils qw( canonicalize_url join_paths add_path_to_url + join_paths ); use Git qw( @@ -1598,7 +1599,7 @@ sub post_fetch_checkout { sub complete_svn_url { my ($url, $path) = @_; - $path =~ s#/+$##; + $path = canonicalize_path($path); # If the path is not a URL... if ($path !~ m#^[a-z\+]+://#) { @@ -1617,7 +1618,7 @@ sub complete_url_ls_init { print STDERR "W: $switch not specified\n"; return; } - $repo_path =~ s#/+$##; + $repo_path = canonicalize_path($repo_path); if ($repo_path =~ m#^[a-z\+]+://#) { $ra = Git::SVN::Ra->new($repo_path); $repo_path = ''; @@ -1638,9 +1639,8 @@ sub complete_url_ls_init { } command_oneline('config', $k, $gs->url) unless $orig_url; - my $remote_path = $gs->path . "/$repo_path"; + my $remote_path = join_paths( $gs->path, $repo_path ); $remote_path =~ s{%([0-9A-F]{2})}{chr hex($1)}ieg; - $remote_path =~ s#/+#/#g; $remote_path =~ s#^/##g; $remote_path .= "/*" if $remote_path !~ /\*/; my ($n) = ($switch =~ /^--(\w+)/); diff --git a/perl/Git/SVN.pm b/perl/Git/SVN.pm index d0087b2897..08891452a1 100644 --- a/perl/Git/SVN.pm +++ b/perl/Git/SVN.pm @@ -460,7 +460,6 @@ sub new { } { my $path = $self->path; - $path =~ s{/+}{/}g; $path =~ s{\A/}{}; $path =~ s{/\z}{}; $self->path($path); |