dougm 00/04/28 19:28:36 Modified: . 00README_FIRST Makefile.PL src/modules/perl modperl_callback.c modperl_interp.c Removed: patches perl_no_get_context.pat Log: no patch to 5.6.0 is needed when PERL_SET_CONTEXT is properly used tell perl_clone() not to clone the stacks (requires scopestack_ix hack) Revision Changes Path 1.6 +1 -2 modperl-2.0/00README_FIRST Index: 00README_FIRST =================================================================== RCS file: /home/cvs/modperl-2.0/00README_FIRST,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- 00README_FIRST 2000/04/25 05:16:07 1.5 +++ 00README_FIRST 2000/04/29 02:28:34 1.6 @@ -8,8 +8,7 @@ and on the list if you want to try building with an interpreter pool, you'll need Perl -5.6.0 with patches/perl_no_get_context.pat applied and Perl built like -so: +5.6.0 built like so: % ./Configure -des -Dusethreads 1.17 +1 -1 modperl-2.0/Makefile.PL Index: Makefile.PL =================================================================== RCS file: /home/cvs/modperl-2.0/Makefile.PL,v retrieving revision 1.16 retrieving revision 1.17 diff -u -r1.16 -r1.17 --- Makefile.PL 2000/04/26 07:28:45 1.16 +++ Makefile.PL 2000/04/29 02:28:35 1.17 @@ -26,7 +26,7 @@ VERSION => $VERSION, macro => { MODPERL_SRC => $code->path, - PERL => $build->perl_config('perl5'), + PERL => $build->perl_config('perlpath'), }, clean => { FILES => "@{ clean_files() }", 1.8 +1 -0 modperl-2.0/src/modules/perl/modperl_callback.c Index: modperl_callback.c =================================================================== RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_callback.c,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- modperl_callback.c 2000/04/27 22:18:36 1.7 +++ modperl_callback.c 2000/04/29 02:28:35 1.8 @@ -339,6 +339,7 @@ /* Child{Init,Exit}, OpenLogs */ aTHX = scfg->mip->parent->perl; } + PERL_SET_CONTEXT(aTHX); #endif MP_TRACE_h(MP_FUNC, "running %d %s handlers\n", 1.10 +11 -1 modperl-2.0/src/modules/perl/modperl_interp.c Index: modperl_interp.c =================================================================== RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_interp.c,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- modperl_interp.c 2000/04/27 21:42:25 1.9 +++ modperl_interp.c 2000/04/29 02:28:35 1.10 @@ -24,8 +24,17 @@ ); #endif - interp->perl = perl_clone(perl, TRUE); + interp->perl = perl_clone(perl, FALSE); + { + /* XXX: hack for bug fixed in 5.6.1 */ + dTHXa(interp->perl); + if (PL_scopestack_ix == 0) { + ENTER; + } + } + MpInterpCLONED_On(interp); + PERL_SET_CONTEXT(mip->parent->perl); #ifdef MP_USE_GTOP MP_TRACE_m_do( @@ -50,6 +59,7 @@ MP_TRACE_i(MP_FUNC, "*error - still in use!*\n"); } + PERL_SET_CONTEXT(interp->perl); PL_perl_destruct_level = 2; perl_destruct(interp->perl); perl_free(interp->perl);