threads / patch / 28812

patchsvn: Quote repository root in regex match

Subject: [PATCH] svn: Quote repository root in regex match

## tl;dr

2 messages between Oct 31, 2011 and Nov 1, 2011. Diffs are folded; open one to read it.

replies: 1people: 2as markdown or json

Ted Percival· Oct 31, 2011, 22:37 UTC · lore

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 <ted.percival@quest.com>
---
 git-svn.perl |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
Show changes to git-svn.perl +2 −2
diff --git a/git-svn.perl b/git-svn.perl
index 351e743..4e95450 100755
--- a/git-svn.perl
+++ b/git-svn.perl
@@ -629,7 +629,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;
@@ -791,7 +791,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 "
-- 
1.7.7
Eric Wong· Nov 1, 2011, 20:13 UTC · re: Ted Percival · lore

Re: [PATCH] svn: Quote repository root in regex match

Ted Percival <ted.percival@quest.com> wrote:
Show 5 quoted lines
> 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 <ted.percival@quest.com>
Looks obviously correct to me, thanks
Acked-by: Eric Wong <normalperson@yhbt.net>

And pushed to master of git://bogomips.org/git-svn.git (commit 0e7e30f5606b48a4c6d34bc99c6d680bb76d3fbc)

← back to recent threads