diff options
Diffstat (limited to 'WebKitTools/Scripts/resolve-ChangeLogs')
-rwxr-xr-x | WebKitTools/Scripts/resolve-ChangeLogs | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/WebKitTools/Scripts/resolve-ChangeLogs b/WebKitTools/Scripts/resolve-ChangeLogs index 9107fd2..db497f9 100755 --- a/WebKitTools/Scripts/resolve-ChangeLogs +++ b/WebKitTools/Scripts/resolve-ChangeLogs @@ -48,6 +48,7 @@ sub fixChangeLogPatch($); sub fixMergedChangeLogs($;@); sub fixOneMergedChangeLog($); sub hasGitUnmergedFiles(); +sub isInGitFilterBranch(); sub mergeChanges($$$); sub parseFixMerged($$;$); sub removeChangeLogArguments($); @@ -63,8 +64,6 @@ my $isSVN = isSVN(); my $SVN = "svn"; my $GIT = "git"; -my $svnVersion = `svn --version --quiet` if $isSVN; - my $fixMerged; my $gitRebaseContinue = 0; my $printWarnings = 1; @@ -77,7 +76,7 @@ my $getOptionsResult = GetOptions( 'w|warnings!' => \$printWarnings, ); -my $relativePath = chdirReturningRelativePath(determineVCSRoot()); +my $relativePath = isInGitFilterBranch() ? '.' : chdirReturningRelativePath(determineVCSRoot()); my @changeLogFiles = removeChangeLogArguments($relativePath); @@ -255,11 +254,11 @@ sub findUnmergedChangeLogs() if ($isSVN) { my $matches; my $file; - if (eval "v$svnVersion" ge v1.6) { - $matches = /^([C]).{6} (.*\S+)\s*$/; + if (isSVNVersion16OrNewer()) { + $matches = /^([C]).{6} (.+?)[\r\n]*$/; $file = $2; } else { - $matches = /^([C]).{5} (.*\S+)\s*$/; + $matches = /^([C]).{5} (.+?)[\r\n]*$/; $file = $2; } if ($matches) { @@ -432,6 +431,11 @@ sub hasGitUnmergedFiles() return $output ne ""; } +sub isInGitFilterBranch() +{ + return exists $ENV{MAPPED_PREVIOUS_COMMIT} && $ENV{MAPPED_PREVIOUS_COMMIT}; +} + sub mergeChanges($$$) { my ($fileMine, $fileOlder, $fileNewer) = @_; |