X-Git-Url: https://git.saurik.com/apple/ld64.git/blobdiff_plain/74cfe461234fcf76aadb30ed686f281f06b555cd..a61fdf0a731e23ff7eb0cc86ba748fd9af5de879:/unit-tests/bin/fail-if-exit-zero.pl diff --git a/unit-tests/bin/fail-if-exit-zero.pl b/unit-tests/bin/fail-if-exit-zero.pl index f1610c9..7859888 100755 --- a/unit-tests/bin/fail-if-exit-zero.pl +++ b/unit-tests/bin/fail-if-exit-zero.pl @@ -7,12 +7,16 @@ if ( exists $ENV{UNIT_TEST_NAME} ) { $test_name = $ENV{UNIT_TEST_NAME}; } -if(system(@ARGV) == 0) +my $ret = system(@ARGV); +my $exit_value = $ret >> 8; +my $signal_num = $ret & 127; +my $dumped_core = $ret & 128; +my $crashed = $signal_num + $dumped_core; + +if(0 == $exit_value || 0 != $crashed) { printf("FAIL $test_name\n"); exit 1; } -else -{ - exit 0; -} + +exit 0;