]> git.ipfire.org Git - thirdparty/coreutils.git/commitdiff
Don't assume that Perl's getpwd agrees with our
authorPaul Eggert <eggert@cs.ucla.edu>
Wed, 28 Jul 2004 19:23:07 +0000 (19:23 +0000)
committerPaul Eggert <eggert@cs.ucla.edu>
Wed, 28 Jul 2004 19:23:07 +0000 (19:23 +0000)
pwd when there are multiple names for the working directory
(which can happen with an automounter, sigh).

tests/misc/pwd

index 74bbc224fffcad828c190b6e2aebeae02df390eb..7975960e4689c297a37e8761f84353d5a42f0518 100755 (executable)
@@ -8,12 +8,12 @@ $PERL -e 1 > /dev/null 2>&1 || {
   exit 77
 }
 
-pwd=`pwd`
+framework_failure=0
+pwd=`${BUILD_SRC_DIR?}/pwd` || framework_failure=1
 t0=`echo "$0"|sed 's,.*/,,'`.tmp; tmp=$t0/$$
 trap 'status=$?; cd $pwd; chmod -R u+rwx $t0; rm -rf $t0 && exit $status' 0
 trap '(exit $?); exit $?' 1 2 13 15
 
-framework_failure=0
 mkdir -p $tmp || framework_failure=1
 cd $tmp || framework_failure=1
 
@@ -25,6 +25,9 @@ fi
 ARGV_0=$0
 export ARGV_0
 
+CWD=$pwd/$tmp
+export CWD
+
 $PERL -w -- - <<\EOF
 
 # Show that pwd works even when the length of the resulting
@@ -34,8 +37,7 @@ use Cwd;
 
 (my $ME = $ENV{ARGV_0}) =~ s|.*/||;
 
-my $cwd = getcwd;
-chomp $cwd;
+my $cwd = $ENV{CWD};
 my $z = 'z' x 31;
 my $n = 256;
 my $expected = $cwd . ("/$z" x $n);