stas 2003/04/06 18:39:51
Modified: src/modules/perl mod_perl.c
Log:
move the setting of MpInterpBASE_On after perl modules are loaded as it
was in first place.
Revision Changes Path
1.167 +10 -3 modperl-2.0/src/modules/perl/mod_perl.c
Index: mod_perl.c
===================================================================
RCS file: /home/cvs/modperl-2.0/src/modules/perl/mod_perl.c,v
retrieving revision 1.166
retrieving revision 1.167
diff -u -r1.166 -r1.167
--- mod_perl.c 7 Apr 2003 01:22:26 -0000 1.166
+++ mod_perl.c 7 Apr 2003 01:39:51 -0000 1.167
@@ -192,9 +192,6 @@
#ifdef USE_ITHREADS
/* base server / virtual host w/ +Parent gets its own mip */
modperl_interp_init(s, p, perl);
-
- /* if we allocated a parent perl, mark it to be destroyed */
- MpInterpBASE_On(scfg->mip->parent);
#endif
PL_endav = endav;
@@ -302,6 +299,11 @@
}
#ifdef USE_ITHREADS
+ /* if we allocated a parent perl, mark it to be destroyed */
+ if (MpSrvPARENT(scfg)) {
+ MpInterpBASE_On(scfg->mip->parent);
+ }
+
if (!scfg->mip) {
/* since mips are created after merge_server_configs()
* need to point to the base mip here if this vhost
@@ -358,6 +360,11 @@
MP_init_status = 2; /* only now mp has really started */
+#ifdef USE_ITHREADS
+ /* a parent perl was allocated, mark it to be destroyed */
+ MpInterpBASE_On(base_scfg->mip->parent);
+#endif
+
for (s=base_server->next; s; s=s->next) {
if (modperl_init_vhost(s, p, base_server) != OK) {
exit(1); /*XXX*/