Francois Gouget : testbot/LogUtils: Handle child process crashes.

Alexandre Julliard julliard at winehq.org
Tue Mar 17 14:41:17 CDT 2020


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

Author: Francois Gouget <fgouget at codeweavers.com>
Date:   Tue Mar 17 00:02:47 2020 +0100

testbot/LogUtils: Handle child process crashes.

Make sure they are included in the failure count, highlighted as
failures and sanitized before comparison for the new failures
detection.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48651
Signed-off-by: Francois Gouget <fgouget at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 testbot/lib/WineTestBot/LogUtils.pm | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/testbot/lib/WineTestBot/LogUtils.pm b/testbot/lib/WineTestBot/LogUtils.pm
index 57229bc..99c30e0 100644
--- a/testbot/lib/WineTestBot/LogUtils.pm
+++ b/testbot/lib/WineTestBot/LogUtils.pm
@@ -327,7 +327,7 @@ sub GetReportLineCategory($)
   if ($Line =~ /: Test (?:failed|succeeded inside todo block): / or
       $Line =~ /Fatal: test .* does not exist/ or
       $Line =~ / done \(258\)/ or
-      $Line =~ /: unhandled exception [0-9a-fA-F]{8} at / or
+      $Line =~ /: unhandled exception [0-9a-fA-F]{8} (?:at|in) / or
       $Line =~ /^Unhandled exception: /)
   {
     return "error";
@@ -627,6 +627,13 @@ sub ParseWineTestReport($$$)
       _CheckUnit($LogInfo, $Cur, $Unit, "unhandled exception");
       $Cur->{LineFailures}++;
     }
+    elsif (($Cur->{Unit} ne "" and
+            $Line =~ /($Cur->{UnitsRE}):\d+: unhandled exception [0-9a-fA-F]{8} in child process /) or
+           $Line =~ /^([_.a-z0-9]+):\d+: unhandled exception [0-9a-fA-F]{8} in child process /)
+    {
+      _CheckUnit($LogInfo, $Cur, $1, "child exception");
+      $Cur->{LineFailures}++;
+    }
     elsif (($Cur->{Unit} ne "" and
             $Line =~ /([0-9a-f]+):($Cur->{Unit}): \d+ tests? executed \((\d+) marked as todo, (\d+) failures?\), (\d+) skipped\./) or
            $Line =~ /^([0-9a-f]+):([_a-z0-9]+): \d+ tests? executed \((\d+) marked as todo, (\d+) failures?\), (\d+) skipped\./)
@@ -1054,6 +1061,8 @@ sub _GetLineKey($)
   or $Line =~ s/^(Unhandled exception: .* code) \(0x[0-9a-fA-F]{8,16}\)\.$/$1/
   # or the process id in Wine's exc_filter() lines
   or $Line =~ s/^[0-9a-f]+:([_a-z0-9]+: unhandled exception [0-9a-fA-F]{8} at )[0-9a-fA-F]{8,16}$/$1/
+  # or child process id
+  or $Line =~ s/^([_.a-z0-9]+:)\d+:( unhandled exception [0-9a-fA-F]{8} in child process )[0-9a-fA-F]{4}$/$1$2/
 
   # The exact amount of data printed does not change the error
   or $Line =~ s/^([_.a-z0-9-]+:[_a-z0-9]* prints too much data )\(\d+ bytes\)$/$1/;




More information about the wine-cvs mailing list