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