summaryrefslogtreecommitdiff
path: root/perl.c
diff options
context:
space:
mode:
authorNick Ing-Simmons <nik@tiuk.ti.com>2001-03-25 20:58:15 +0000
committerNick Ing-Simmons <nik@tiuk.ti.com>2001-03-25 20:58:15 +0000
commit13621cfb31449eed71b690b723c2463019b1b277 (patch)
tree93ad64534ab9ef56d1655d85c33ac65df651e8e8 /perl.c
parent8040349a05f5a3f1e93bde55d8359e415c47bf01 (diff)
downloadperl-13621cfb31449eed71b690b723c2463019b1b277.tar.gz
Add destruct time hook to PerlIO (for work-in-process implementing
layers in perl code. In such cases layers need to be popped before we loose the ability to run perl code.) Also back-out "PerlIO::object" hook - it isn't going to work like that... p4raw-id: //depot/perlio@9346
Diffstat (limited to 'perl.c')
-rw-r--r--perl.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/perl.c b/perl.c
index b3637fcd22..41ffdaaf90 100644
--- a/perl.c
+++ b/perl.c
@@ -395,6 +395,7 @@ perl_destruct(pTHXx)
LEAVE;
FREETMPS;
+
/* We must account for everything. */
/* Destroy the main CV and syntax tree */
@@ -409,6 +410,13 @@ perl_destruct(pTHXx)
PL_main_cv = Nullcv;
PL_dirty = TRUE;
+ /* Tell PerlIO we are about to tear things apart in case
+ we have layers which are using resources that should
+ be cleaned up now.
+ */
+
+ PerlIO_destruct(aTHX);
+
if (PL_sv_objcount) {
/*
* Try to destruct global references. We do this first so that the