Francois Gouget : testbot: Make sure UpdateStatus() iterates over all the Steps and Tasks.
Alexandre Julliard
julliard at winehq.org
Tue Jun 12 17:35:20 CDT 2018
Module: tools
Branch: master
Commit: b0b20cfea3cf40a939ee9e16839f274aea38285b
URL: https://source.winehq.org/git/tools.git/?a=commit;h=b0b20cfea3cf40a939ee9e16839f274aea38285b
Author: Francois Gouget <fgouget at codeweavers.com>
Date: Tue Jun 12 11:49:23 2018 +0200
testbot: Make sure UpdateStatus() iterates over all the Steps and Tasks.
It tends to be called from places where filters have been put on the
Steps and/or Tasks collections which prevents it from getting the full
picture. So work on a clone that has no filter.
Signed-off-by: Francois Gouget <fgouget at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
testbot/lib/WineTestBot/Jobs.pm | 2 +-
testbot/lib/WineTestBot/Steps.pm | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/testbot/lib/WineTestBot/Jobs.pm b/testbot/lib/WineTestBot/Jobs.pm
index b3512e1..a13b346 100644
--- a/testbot/lib/WineTestBot/Jobs.pm
+++ b/testbot/lib/WineTestBot/Jobs.pm
@@ -209,7 +209,7 @@ sub UpdateStatus($)
return $Status if ($Status ne "queued" && $Status ne "running");
my %Has;
- my $Steps = $self->Steps;
+ my $Steps = $self->Steps->Clone();
my @SortedSteps = sort { $a->No <=> $b->No } @{$Steps->GetItems()};
foreach my $Step (@SortedSteps)
{
diff --git a/testbot/lib/WineTestBot/Steps.pm b/testbot/lib/WineTestBot/Steps.pm
index aea1aee..8afe793 100644
--- a/testbot/lib/WineTestBot/Steps.pm
+++ b/testbot/lib/WineTestBot/Steps.pm
@@ -199,7 +199,7 @@ sub UpdateStatus($$)
return $Status if ($Status ne "queued" && $Status ne "running");
my %Has;
- map { $Has{$_->UpdateStatus($Skip)} = 1 } (@{$self->Tasks->GetItems()});
+ map { $Has{$_->UpdateStatus($Skip)} = 1 } (@{$self->Tasks->Clone()->GetItems()});
# Inherit the tasks most significant status.
# Note that one or more tasks may have been requeued during the cleanup phase
More information about the wine-cvs
mailing list