Francois Gouget : winetest/dissect: Fix handling of near timeouts.

Alexandre Julliard julliard at winehq.org
Thu Mar 5 16:33:59 CST 2020


Module: tools
Branch: master
Commit: 24ec563556c4f359a9049643c8d80ec97d197468
URL:    https://source.winehq.org/git/tools.git/?a=commit;h=24ec563556c4f359a9049643c8d80ec97d197468

Author: Francois Gouget <fgouget at codeweavers.com>
Date:   Wed Mar  4 09:47:57 2020 +0100

winetest/dissect: Fix handling of near timeouts.

Sometimes WineTest times out waiting for a test but that test completes
at almost the same time so that there is still a valid result line. This
was causing dissect to complain about the inconsistency between the
test's failure count and the 258 'exit code'.
With this change dissect matches the TestBot Wine report parser.

Signed-off-by: Francois Gouget <fgouget at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 winetest/dissect | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/winetest/dissect b/winetest/dissect
index 87fdc65..8f30ccd 100755
--- a/winetest/dissect
+++ b/winetest/dissect
@@ -739,17 +739,17 @@ while ($line = <IN>) {
         my $class = $l_rc ? "failed" : "";
         add_test_line($class, escapeHTML($line));
 
-        if ((!$l_pid and !%pids) or ($l_pid and !$pids{$l_pid} and !$pids{0}))
+        if ($l_rc == 258)
+        {
+            add_test_line("end", "Test failed: timed out");
+            $summary = "failed 258";
+            $extra_failures++;
+            $broken = 1;
+        }
+        elsif ((!$l_pid and !%pids) or ($l_pid and !$pids{$l_pid} and !$pids{0}))
         {
             # The main summary line is missing
-            if ($l_rc == 258)
-            {
-                add_test_line("end", "Test failed: timed out");
-                $summary = "failed 258";
-                $extra_failures++;
-                $broken = 1;
-            }
-            elsif ($l_rc & 0xc0000000)
+            if ($l_rc & 0xc0000000)
             {
                 add_test_line("end", sprintf("Test failed: crash (%08x)", $l_rc & 0xffffffff));
                 $summary = "failed crash";




More information about the wine-cvs mailing list