diff options
Diffstat (limited to 'lang/perl5.6')
-rw-r--r-- | lang/perl5.6/Makefile | 2 | ||||
-rw-r--r-- | lang/perl5.6/files/patch-Safe.pm | 20 |
2 files changed, 21 insertions, 1 deletions
diff --git a/lang/perl5.6/Makefile b/lang/perl5.6/Makefile index 306c9439b08c..508e0143c7ae 100644 --- a/lang/perl5.6/Makefile +++ b/lang/perl5.6/Makefile @@ -7,7 +7,7 @@ PORTNAME= perl PORTVERSION= ${PERL_VER} -PORTREVISION= 11 +PORTREVISION= 12 CATEGORIES= lang devel perl5 MASTER_SITES= ${MASTER_SITE_PERL_CPAN} \ ${MASTER_SITE_LOCAL:S/$/:local/} diff --git a/lang/perl5.6/files/patch-Safe.pm b/lang/perl5.6/files/patch-Safe.pm new file mode 100644 index 000000000000..142b03ca4fba --- /dev/null +++ b/lang/perl5.6/files/patch-Safe.pm @@ -0,0 +1,20 @@ +--- ext/Opcode/Safe.pm.orig Fri Feb 23 03:57:54 2001 ++++ ext/Opcode/Safe.pm Mon Apr 21 16:24:39 2003 +@@ -213,7 +213,7 @@ sub reval { + # Create anon sub ref in root of compartment. + # Uses a closure (on $expr) to pass in the code to be executed. + # (eval on one line to keep line numbers as expected by caller) +- my $evalcode = sprintf('package %s; sub { eval $expr; }', $root); ++ my $evalcode = sprintf('package %s; sub { @_ = (); eval $expr; }', $root); + my $evalsub; + + if ($strict) { use strict; $evalsub = eval $evalcode; } +@@ -227,7 +227,7 @@ sub rdo { + my $root = $obj->{Root}; + + my $evalsub = eval +- sprintf('package %s; sub { do $file }', $root); ++ sprintf('package %s; sub { @_ = (); do $file }', $root); + return Opcode::_safe_call_sv($root, $obj->{Mask}, $evalsub); + } + |