Francois Gouget : testbot: Factorize the Perl error detection.
Alexandre Julliard
julliard at winehq.org
Wed Oct 17 11:31:30 CDT 2018
Module: tools
Branch: master
Commit: 857846d108debec671ee546ee518af1921e81a35
URL: https://source.winehq.org/git/tools.git/?a=commit;h=857846d108debec671ee546ee518af1921e81a35
Author: Francois Gouget <fgouget at codeweavers.com>
Date: Wed Oct 17 16:22:12 2018 +0200
testbot: Factorize the Perl error detection.
Signed-off-by: Francois Gouget <fgouget at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
testbot/lib/WineTestBot/LogUtils.pm | 31 +++++++++++++++++++++++--------
1 file changed, 23 insertions(+), 8 deletions(-)
diff --git a/testbot/lib/WineTestBot/LogUtils.pm b/testbot/lib/WineTestBot/LogUtils.pm
index 17d44a4..1bb8f5a 100644
--- a/testbot/lib/WineTestBot/LogUtils.pm
+++ b/testbot/lib/WineTestBot/LogUtils.pm
@@ -45,6 +45,27 @@ use WineTestBot::Config; # For $MaxUnitSize
=pod
=over 12
+=item C<_IsPerlError()>
+
+Returns true if the string looks like a Perl error message.
+
+=back
+=cut
+
+sub _IsPerlError($)
+{
+ my ($Str) = @_;
+
+ return $Str =~ /^Use of uninitialized value / ||
+ $Str =~ /^Undefined subroutine / ||
+ $Str =~ /^Global symbol / ||
+ $Str =~ /^Possible precedence issue /;
+}
+
+
+=pod
+=over 12
+
=item C<ParseTaskLog()>
Returns ok if the task was successful and an error code otherwise.
@@ -71,11 +92,7 @@ sub ParseTaskLog($)
$Result = "badpatch";
last; # Should be the last and most specific message
}
- elsif ($Line =~ /^Task: / or
- # Typical perl errors
- $Line =~ /^Use of uninitialized value / or
- $Line =~ /^Undefined subroutine / or
- $Line =~ /^Global symbol /)
+ elsif ($Line =~ /^Task: / or _IsPerlError($Line))
{
$Result = "failed";
}
@@ -115,9 +132,7 @@ sub GetLogLineCategory($)
$Line =~ /^Makefile:[0-9]+: recipe for target .* failed$/ or
$Line =~ /^(?:Build|Reconfig|Task): (?!ok)/ or
# Typical perl errors
- $Line =~ /^Use of uninitialized value / or
- $Line =~ /^Undefined subroutine / or
- $Line =~ /^Global symbol /)
+ _IsPerlError($Line))
{
return "error";
}
More information about the wine-cvs
mailing list