Author: pgollucci Date: Thu Nov 30 03:20:13 2006 New Revision: 480890 URL: http://svn.apache.org/viewvc?view=rev&rev=480890 Log: o PERL_SYS_TERM() needs a PerlInterpreter 'my_perl' as of 5.9.5
o xmg_magic moved into a union as a space saver. (note, as stas noted previously this entire kludge needs to be fixed) Modified: perl/modperl/trunk/Changes perl/modperl/trunk/src/modules/perl/mod_perl.c perl/modperl/trunk/src/modules/perl/modperl_interp.h Modified: perl/modperl/trunk/Changes URL: http://svn.apache.org/viewvc/perl/modperl/trunk/Changes?view=diff&rev=480890&r1=480889&r2=480890 ============================================================================== --- perl/modperl/trunk/Changes (original) +++ perl/modperl/trunk/Changes Thu Nov 30 03:20:13 2006 @@ -12,6 +12,8 @@ =item 2.0.4-dev +Fixes to get bleed-ithread (5.9.5+) to comile again. + =item 2.0.3 November 28, 2006 Prevent things in %INC that are not stat() able Modified: perl/modperl/trunk/src/modules/perl/mod_perl.c URL: http://svn.apache.org/viewvc/perl/modperl/trunk/src/modules/perl/mod_perl.c?view=diff&rev=480890&r1=480889&r2=480890 ============================================================================== --- perl/modperl/trunk/src/modules/perl/mod_perl.c (original) +++ perl/modperl/trunk/src/modules/perl/mod_perl.c Thu Nov 30 03:20:13 2006 @@ -584,6 +584,15 @@ static apr_status_t modperl_sys_term(void *data) { + /* PERL_SYS_TERM() needs 'my_perl' as of 5.9.5 */ +#ifdef USE_ITHREADS +# if PERL_REVISION == 5 && \ + ((PERL_VERSION == 9 && PERL_SUBVERSION > 4) || \ + PERL_VERSION > 9) + modperl_cleanup_data_t *cdata = (modperl_cleanup_data_t *)data; + PerlInterpreter *my_perl = (PerlInterpreter *)cdata->data; +# endif +#endif MP_init_status = 0; MP_threads_started = 0; MP_post_post_config_phase = 0; Modified: perl/modperl/trunk/src/modules/perl/modperl_interp.h URL: http://svn.apache.org/viewvc/perl/modperl/trunk/src/modules/perl/modperl_interp.h?view=diff&rev=480890&r1=480889&r2=480890 ============================================================================== --- perl/modperl/trunk/src/modules/perl/modperl_interp.h (original) +++ perl/modperl/trunk/src/modules/perl/modperl_interp.h Thu Nov 30 03:20:13 2006 @@ -44,8 +44,15 @@ #endif #ifndef HvPMROOT +# if PERL_REVISION == 5 && \ + ((PERL_VERSION == 9 && PERL_SUBVERSION > 4) || \ + PERL_VERSION > 9) +#define MP_THX_INTERP_SET(thx, interp) \ + ((XPVMG*)SvANY(*Perl_Imodglobal_ptr(thx)))->xmg_u.xmg_magic = (MAGIC*)interp +# else #define MP_THX_INTERP_SET(thx, interp) \ ((XPVMG*)SvANY(*Perl_Imodglobal_ptr(thx)))->xmg_magic = (MAGIC*)interp +# endif #else #define MP_THX_INTERP_SET(thx, interp) \ HvPMROOT(*Perl_Imodglobal_ptr(thx)) = (PMOP*)interp