git-svn: fix commiting renames over DAV with funky file names
[gitweb.git] / git-svn.perl
index 299b40f93829eeef982b04f7f53dbb2d6baf9a6a..01c39042717c60c9a5b100ac60d2569c991736ea 100755 (executable)
@@ -2724,6 +2724,9 @@ sub repo_path {
 
 sub url_path {
        my ($self, $path) = @_;
+       if ($self->{url} =~ m#^https?://#) {
+               $path =~ s/([^a-zA-Z0-9_.-])/uc sprintf("%%%02x",ord($1))/eg;
+       }
        $self->{url} . '/' . $self->repo_path($path);
 }