diff options
author | Ilya Zakharevich <ilya@math.berkeley.edu> | 2000-09-27 14:54:49 -0400 |
---|---|---|
committer | Jarkko Hietaniemi <jhi@iki.fi> | 2000-10-03 00:04:00 +0000 |
commit | 6dc8a9e4bcd53982379e0df712cfc2dd75d92d2f (patch) | |
tree | 3172594a4993b36d88e40a7e472951cd65840346 /pp_ctl.c | |
parent | b57a092cb822ae32e4804707ff8729ac6bb222b9 (diff) | |
download | perl-6dc8a9e4bcd53982379e0df712cfc2dd75d92d2f.tar.gz |
Inside require() $^S was always left undefined.
Subject: Re: Tiny 2-byte change to fix debugger's eval bug
Message-ID: <20000927185449.A24927@monk.mps.ohio-state.edu>
p4raw-id: //depot/perl@7120
Diffstat (limited to 'pp_ctl.c')
-rw-r--r-- | pp_ctl.c | 5 |
1 files changed, 4 insertions, 1 deletions
@@ -2728,7 +2728,9 @@ S_doeval(pTHX_ int gimme, OP** startop) AV* comppadlist; I32 i; - PL_in_eval = EVAL_INEVAL; + PL_in_eval = ((saveop && saveop->op_type == OP_REQUIRE) + ? (EVAL_INREQUIRE | (PL_in_eval & EVAL_INEVAL)) + : EVAL_INEVAL); PUSHMARK(SP); @@ -2891,6 +2893,7 @@ S_doeval(pTHX_ int gimme, OP** startop) CvDEPTH(PL_compcv) = 1; SP = PL_stack_base + POPMARK; /* pop original mark */ PL_op = saveop; /* The caller may need it. */ + PL_lex_state = LEX_NOTPARSING; /* $^S needs this. */ #ifdef USE_THREADS MUTEX_LOCK(&PL_eval_mutex); PL_eval_owner = 0; |