From: Ted Percival Date: Mon, 31 Oct 2011 22:37:12 +0000 (-0600) Subject: svn: Quote repository root in regex match X-Git-Tag: v1.7.8-rc1~15 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/0e7e30f5606b48a4c6d34bc99c6d680bb76d3fbc svn: Quote repository root in regex match Fixes a problem matching repository URLs, especially those with a '+' in the URL, such as svn+ssh:// URLs. Parts of the URL were interpreted as special characters by the regex matching. Signed-off-by: Ted Percival Acked-by: Eric Wong --- diff --git a/git-svn.perl b/git-svn.perl index b67fef0bf6..e30df22d89 100755 --- a/git-svn.perl +++ b/git-svn.perl @@ -684,7 +684,7 @@ sub populate_merge_info { fatal "merge commit $d has ancestor $parent, but that change " ."does not have git-svn metadata!"; } - unless ($branchurl =~ /^$rooturl(.*)/) { + unless ($branchurl =~ /^\Q$rooturl\E(.*)/) { fatal "commit $parent git-svn metadata changed mid-run!"; } my $branchpath = $1; @@ -867,7 +867,7 @@ sub cmd_dcommit { ."has uuid $uuid!"; } - unless ($branchurl =~ /^$rooturl(.*)/) { + unless ($branchurl =~ /^\Q$rooturl\E(.*)/) { # This branch is very strange indeed. fatal "merge parent $parent for $d is on branch " ."$branchurl, which is not under the "