From: Jim Meyering Date: Fri, 19 Jul 2002 21:35:48 +0000 (+0000) Subject: Don't expect `ARGV_0=$0 exec ...' to work. X-Git-Tag: FILEUTILS-4_1_10~22 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=b6389794e249151e047e6a5e9900685d944fa80a;p=thirdparty%2Fcoreutils.git Don't expect `ARGV_0=$0 exec ...' to work. It doesn't work with /bin/sh of Solaris5.6. Use an explicit `export ARGV_0' instead. [comparing actual and expected output]: Don't match the entire line, but rather just the `rm: cannot remove `$dir/$f':' part. --- diff --git a/tests/rm/fail-eperm b/tests/rm/fail-eperm index b1293cd779..7fa9c96f7c 100755 --- a/tests/rm/fail-eperm +++ b/tests/rm/fail-eperm @@ -13,7 +13,10 @@ case "$PERL" in exit 77 ;; esac -ARGV_0=$0 exec $PERL -w -- - << \EOP +ARGV_0=$0 +export ARGV_0 + +exec $PERL -w -- - << \EOP require 5.003; use strict; @@ -71,11 +74,11 @@ foreach my $dir (@dir_list) or die "$ME: unexpected exit status from `$cmd';\n" . " got $status, expected 1\n"; - my $exp = "rm: cannot remove `$dir/$f': Operation not permitted\n"; - $line eq $exp + my $exp = "rm: cannot remove `$dir/$f':"; + $line =~ /^$exp/ or die "$ME: unexpected dignostic from `$cmd';\n" . " got $line" - . " expected $exp"; + . " expected $exp ...\n"; last; }