diff options
Diffstat (limited to 't')
-rwxr-xr-x | t/op/taint.t | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/t/op/taint.t b/t/op/taint.t index 03bcc65768..8311690194 100755 --- a/t/op/taint.t +++ b/t/op/taint.t @@ -17,7 +17,7 @@ use Config; use File::Spec::Functions; BEGIN { require './test.pl'; } -plan tests => 249; +plan tests => 251; $| = 1; @@ -1185,3 +1185,22 @@ SKIP: test $@ =~ /Insecure \$ENV/, 'popen neglects %ENV check'; } } + +{ + package AUTOLOAD_TAINT; + sub AUTOLOAD { + our $AUTOLOAD; + return if $AUTOLOAD =~ /DESTROY/; + if ($AUTOLOAD =~ /untainted/) { + main::ok(!main::tainted($AUTOLOAD), '$AUTOLOAD can be untainted'); + } else { + main::ok(main::tainted($AUTOLOAD), '$AUTOLOAD can be tainted'); + } + } + + package main; + my $o = bless [], 'AUTOLOAD_TAINT'; + $o->$TAINT; + $o->untainted; +} + |