Francois Gouget : testbot/TestWTBS: Fix the patch range when --jobs points to a non-patch job.
Alexandre Julliard
julliard at winehq.org
Fri Feb 5 16:50:15 CST 2021
Module: tools
Branch: master
Commit: 1a7d958bfb7fb46696bb29abcfa43da674ecb9cd
URL: https://source.winehq.org/git/tools.git/?a=commit;h=1a7d958bfb7fb46696bb29abcfa43da674ecb9cd
Author: Francois Gouget <fgouget at codeweavers.com>
Date: Fri Feb 5 16:03:35 2021 +0100
testbot/TestWTBS: Fix the patch range when --jobs points to a non-patch job.
This resulted in an empty set of patch ranges which meant to check every
patch.
TestWTBS now distinguishes an undef $PatchRanges, which means to check
all patches, from an empty @$PatchRanges, which means to ignore all
patches.
Signed-off-by: Francois Gouget <fgouget at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
testbot/tests/TestWTBS | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)
diff --git a/testbot/tests/TestWTBS b/testbot/tests/TestWTBS
index 87b53fe..1cbec2e 100755
--- a/testbot/tests/TestWTBS
+++ b/testbot/tests/TestWTBS
@@ -131,11 +131,12 @@ while (@ARGV)
}
}
-my $JobRanges = [];
+my $JobRanges;
if (!defined $Usage)
{
if (defined $OptJobs)
{
+ $JobRanges = [];
foreach my $Range (split /,+/, $OptJobs)
{
if ($Range =~ /^([0-9]+)$/)
@@ -988,7 +989,11 @@ sub IsInRange($$)
my ($Ranges, $Id) = @_;
return 0 if (!$Id);
- return 1 if (!$Ranges or !@$Ranges);
+
+ # No range means to allow everything...
+ return 1 if (!$Ranges);
+
+ # ...while an empty range means to reject everything
foreach my $Range (@$Ranges)
{
return 1 if (($Range->[0] == 0 or $Range->[0] <= $Id) and
@@ -1304,12 +1309,13 @@ sub CheckPatches()
my $Jobs = CreateJobs();
my $Patches = CreatePatches();
- my $PatchRanges = [];
+ my $PatchRanges;
if (@$JobRanges)
{
# Convert the job ranges into a list of patch ranges so that these patches:
# 1. either have a job in the allowed job ranges,
# 2. or have no job but are contiguous to a patch satisfying 1 or 2.
+ $PatchRanges = [];
my ($First, $Last, $AddRange);
foreach my $Patch (sort { $a->Id <=> $b->Id } @{$Patches->GetItems()})
{
More information about the wine-cvs
mailing list