summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGurusamy Sarathy <gsar@cpan.org>1998-11-17 07:43:08 +0000
committerGurusamy Sarathy <gsar@cpan.org>1998-11-17 07:43:08 +0000
commit24d3c5181312bc6d6fc2f89a6710968ed97b31dc (patch)
tree40b5bc457f0c2ca2999c3004c986e85e71885f33
parent95dfd3ab5ca3e72850832fe8585dd8f0b3fc729f (diff)
downloadperl-24d3c5181312bc6d6fc2f89a6710968ed97b31dc.tar.gz
ensure PL_dirty is reinit-ed properly under -DMULTIPLICITY
p4raw-id: //depot/perl@2244
-rw-r--r--perl.c4
-rw-r--r--thrdvar.h2
2 files changed, 3 insertions, 3 deletions
diff --git a/perl.c b/perl.c
index d2ee055816..bf86fef8be 100644
--- a/perl.c
+++ b/perl.c
@@ -354,6 +354,7 @@ perl_destruct(register PerlInterpreter *sv_interp)
PL_main_start = Nullop;
SvREFCNT_dec(PL_main_cv);
PL_main_cv = Nullcv;
+ PL_dirty = TRUE;
if (PL_sv_objcount) {
/*
@@ -361,8 +362,6 @@ perl_destruct(register PerlInterpreter *sv_interp)
* destructors and destructees still exist. Some sv's might remain.
* Non-referenced objects are on their own.
*/
-
- PL_dirty = TRUE;
sv_clean_objs();
}
@@ -1872,6 +1871,7 @@ init_interp(void)
PL_profiledata = NULL; \
PL_rsfp = Nullfp; \
PL_rsfp_filters = Nullav; \
+ PL_dirty = FALSE; \
} STMT_END
I_REINIT;
#else
diff --git a/thrdvar.h b/thrdvar.h
index fb45e47f52..51f68ea6d5 100644
--- a/thrdvar.h
+++ b/thrdvar.h
@@ -85,7 +85,7 @@ PERLVAR(Trestartop, OP *) /* propagating an error from croak? */
PERLVARI(Tcurcop, COP * VOL, &PL_compiling)
PERLVAR(Tin_eval, VOL int) /* trap "fatal" errors? */
PERLVAR(Tdelaymagic, int) /* ($<,$>) = ... */
-PERLVAR(Tdirty, bool) /* in the middle of tearing things down? */
+PERLVARI(Tdirty, bool, FALSE) /* in the middle of tearing things down? */
PERLVAR(Tlocalizing, int) /* are we processing a local() list? */
PERLVAR(Tcurstack, AV *) /* THE STACK */