2006-10-03 Jim Meyering <jim@meyering.net>
+ * tests/rm/fail-eperm: Report failure also if rm is terminated by
+ a signal.
+
* src/c99-to-c89.diff: Convert two c99'isms -- one in remove.c
and one in shred.c -- that were added before coreutils-6.3.
Reported by Michael Deutschmann.
my $line = <RM>;
close RM;
- my $status = $? >> 8;
- $status == 1
- or die "$ME: unexpected exit status from `$cmd';\n"
- . " got $status, expected 1\n";
+ my $rc = $?;
+ if (0x80 < $rc)
+ {
+ my $status = $rc >> 8;
+ $status == 1
+ or die "$ME: unexpected exit status from `$cmd';\n"
+ . " got $status, expected 1\n";
+ }
+ else
+ {
+ # Terminated by a signal.
+ my $sig_num = $rc & 0x7F;
+ die "$ME: command `$cmd' died with signal $sig_num\n";
+ }
my $exp = "$rm: cannot remove `$target_file':";
$line