summaryrefslogtreecommitdiff
path: root/pp_ctl.c
diff options
context:
space:
mode:
authorGurusamy Sarathy <gsar@cpan.org>2000-03-08 18:35:48 +0000
committerGurusamy Sarathy <gsar@cpan.org>2000-03-08 18:35:48 +0000
commitfaa7e5bbaa1a624cf61859998ab6ab0a1323ed35 (patch)
tree517d38c6e942b647e70d697aa0ce84e049de56eb /pp_ctl.c
parente4783991709775389a3fc70c841522b0165cd076 (diff)
downloadperl-faa7e5bbaa1a624cf61859998ab6ab0a1323ed35.tar.gz
do FILE should not see outside lexicals (from Rick Delaney
<rick@consumercontact.com>) p4raw-id: //depot/perl@5620
Diffstat (limited to 'pp_ctl.c')
-rw-r--r--pp_ctl.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/pp_ctl.c b/pp_ctl.c
index edbe7b19ab..42811f5619 100644
--- a/pp_ctl.c
+++ b/pp_ctl.c
@@ -2727,8 +2727,11 @@ S_doeval(pTHX_ int gimme, OP** startop)
av_store(comppadlist, 1, (SV*)PL_comppad);
CvPADLIST(PL_compcv) = comppadlist;
- if (!saveop || saveop->op_type != OP_REQUIRE)
+ if (!saveop ||
+ (saveop->op_type != OP_REQUIRE && saveop->op_type != OP_DOFILE))
+ {
CvOUTSIDE(PL_compcv) = (CV*)SvREFCNT_inc(caller);
+ }
SAVEFREESV(PL_compcv);