summaryrefslogtreecommitdiffstats
path: root/WebKitTools/Scripts/resolve-ChangeLogs
diff options
context:
space:
mode:
Diffstat (limited to 'WebKitTools/Scripts/resolve-ChangeLogs')
-rwxr-xr-xWebKitTools/Scripts/resolve-ChangeLogs16
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) = @_;