The perl expression:
exit $problems ? 1 : 0;
will now throw a warning with newer versions of perl:
Possible precedence issue with control flow operator (exit) at
/usr/bin/guards line 198.
as it properly catches that the control flow is NOT being evaluated
here. For more details on the issue, please see this 10-year-old perl
blog post:
https://blogs.perl.org/users/buddy_burden/2014/06/when-a-failure-is-not-a-failure.html
Fix this up by providing the proper "evaluate this expression and THEN
return the value" logic that the code was expecting:
Signed-off-by: Greg Kroah-Hartman <[email protected]>
diff --git a/bin/guards.in b/bin/guards.in
index 1c1605bbdbba..f6c4444bdf36 100644
--- a/bin/guards.in
+++ b/bin/guards.in
@@ -195,7 +195,7 @@ if ($check) {
# This is not an error if the entries are mutually exclusive...
}
}
- exit $problems ? 1 : 0;
+ exit ($problems ? 1 : 0);
} elsif ($list) {
parse($fh, sub {
_______________________________________________
Quilt-dev mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/quilt-dev