You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl-cvs@perl.apache.org by do...@postman.hyperreal.org on 1998/08/25 21:10:40 UTC
cvs commit: modperl/src/modules/perl mod_perl.c
dougm 98/08/25 12:10:39
Modified: . Changes
src/modules/perl mod_perl.c
Log:
if PERL_DESTRUCT_LEVEL < 0, skip perl_destruct(), etc. in perl_shutdown()
Revision Changes Path
1.113 +2 -0 modperl/Changes
Index: Changes
===================================================================
RCS file: /export/home/cvs/modperl/Changes,v
retrieving revision 1.112
retrieving revision 1.113
diff -u -r1.112 -r1.113
--- Changes 1998/08/25 18:58:39 1.112
+++ Changes 1998/08/25 19:10:36 1.113
@@ -8,6 +8,8 @@
=item 1.15_01-dev
+if PERL_DESTRUCT_LEVEL < 0, skip perl_destruct(), etc. in perl_shutdown()
+
add CLOSE method for tied *STD{OUT,IN}
add config for mod_ssl and 'make test' [Lupe Christoph <lu...@alanya.m.isar.de>]
1.40 +10 -3 modperl/src/modules/perl/mod_perl.c
Index: mod_perl.c
===================================================================
RCS file: /export/home/cvs/modperl/src/modules/perl/mod_perl.c,v
retrieving revision 1.39
retrieving revision 1.40
diff -u -r1.39 -r1.40
--- mod_perl.c 1998/08/13 03:19:38 1.39
+++ mod_perl.c 1998/08/25 19:10:37 1.40
@@ -253,16 +253,23 @@
void perl_shutdown (server_rec *s, pool *p)
{
char *pdl = NULL;
- /* execute END blocks we suspended during perl_startup() */
- perl_run_endav("perl_shutdown");
if((pdl = getenv("PERL_DESTRUCT_LEVEL")))
perl_destruct_level = atoi(pdl);
else
perl_destruct_level = PERL_DESTRUCT_LEVEL;
+ if(perl_destruct_level < 0) {
+ MP_TRACE_g(fprintf(stderr,
+ "skipping destruction of Perl interpreter\n"));
+ return;
+ }
+
+ /* execute END blocks we suspended during perl_startup() */
+ perl_run_endav("perl_shutdown");
+
MP_TRACE_g(fprintf(stderr,
- "destructing and freeing perl interpreter..."));
+ "destructing and freeing Perl interpreter..."));
perl_util_cleanup();