diff options
Diffstat (limited to 'lib/File/Find/taint.t')
-rw-r--r-- | lib/File/Find/taint.t | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/lib/File/Find/taint.t b/lib/File/Find/taint.t index fb3dfc2751..f27c42c5fc 100644 --- a/lib/File/Find/taint.t +++ b/lib/File/Find/taint.t @@ -34,6 +34,8 @@ foreach my $dir (split(/$sep/,$ENV{'PATH'})) } $ENV{'PATH'} = join($sep,@path); +my $NonTaintedCwd = $^O eq 'MSWin32' || $^O eq 'cygwin'; + cleanup(); find({wanted => sub { print "ok 1\n" if $_ eq 'commonsense.t'; }, @@ -321,7 +323,7 @@ eval {File::Find::find( {wanted => \&simple_wanted, untaint => 1, print "# $@" if $@; #$^D = 8; -if ($^O eq 'MSWin32') { +if ($NonTaintedCwd) { Skip("$^O does not taint cwd"); } else { @@ -394,7 +396,12 @@ if ( $symlink_exists ) { eval {File::Find::find( {wanted => \&simple_wanted, untaint => 1, untaint_skip => 1, untaint_pattern => qr|^(NO_MATCH)$|}, topdir('fa') );}; - Check( $@ =~ m|insecure cwd| ); + if ($NonTaintedCwd) { + Skip("$^O does not taint cwd"); + } + else { + Check( $@ =~ m|insecure cwd| ); + } chdir($cwd_untainted); } |