Return-Path: Delivered-To: apmail-perl-modperl-cvs-archive@www.apache.org Received: (qmail 31026 invoked from network); 8 Jul 2005 19:08:04 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 8 Jul 2005 19:08:04 -0000 Received: (qmail 70938 invoked by uid 500); 8 Jul 2005 19:08:03 -0000 Delivered-To: apmail-perl-modperl-cvs-archive@perl.apache.org Received: (qmail 70925 invoked by uid 500); 8 Jul 2005 19:08:03 -0000 Mailing-List: contact modperl-cvs-help@perl.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: Reply-To: dev@perl.apache.org List-Id: Delivered-To: mailing list modperl-cvs@perl.apache.org Received: (qmail 70911 invoked by uid 99); 8 Jul 2005 19:08:03 -0000 X-ASF-Spam-Status: No, hits=-9.8 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [209.237.227.194] (HELO minotaur.apache.org) (209.237.227.194) by apache.org (qpsmtpd/0.29) with SMTP; Fri, 08 Jul 2005 12:07:52 -0700 Received: (qmail 30933 invoked by uid 65534); 8 Jul 2005 19:07:49 -0000 Message-ID: <20050708190749.30929.qmail@minotaur.apache.org> Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r209859 - /perl/modperl/trunk/src/modules/perl/modperl_interp.h Date: Fri, 08 Jul 2005 19:07:47 -0000 To: modperl-cvs@perl.apache.org From: stas@apache.org X-Mailer: svnmailer-1.0.2 X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Author: stas Date: Fri Jul 8 12:07:46 2005 New Revision: 209859 URL: http://svn.apache.org/viewcvs?rev=209859&view=rev Log: perl blead fix: in 5.9.3 HvPMROOT was completely removed, temporary using Perl_Imodglobal_ptr(thx)))->xmg_magic (which fails on perl_clone from ithreads, but otherwise works). this must be replaced with a better solution once we find it. Modified: perl/modperl/trunk/src/modules/perl/modperl_interp.h Modified: perl/modperl/trunk/src/modules/perl/modperl_interp.h URL: http://svn.apache.org/viewcvs/perl/modperl/trunk/src/modules/perl/modperl_interp.h?rev=209859&r1=209858&r2=209859&view=diff ============================================================================== --- perl/modperl/trunk/src/modules/perl/modperl_interp.h (original) +++ perl/modperl/trunk/src/modules/perl/modperl_interp.h Fri Jul 8 12:07:46 2005 @@ -27,12 +27,28 @@ * HvPMROOT will never be used by Perl with PL_modglobal. * so we have stolen it as a quick way to stash the interp * pointer. + * + * However in 5.9.3 HvPMROOT was completely removed, so we have moved + * to use another struct member that's hopefully won't be used by + * anybody else. But if we can find a better place to store the + * pointer to the current mod_perl interpreter object it'd be a much + * cleaner solution. of course it must be really fast. */ +#ifndef HvPMROOT +#define MP_THX_INTERP_GET(thx) \ + (modperl_interp_t *) ((XPVMG*)SvANY(*Perl_Imodglobal_ptr(thx)))->xmg_magic +#else #define MP_THX_INTERP_GET(thx) \ (modperl_interp_t *)HvPMROOT(*Perl_Imodglobal_ptr(thx)) +#endif -#define MP_THX_INTERP_SET(thx, interp) \ +#ifndef HvPMROOT +#define MP_THX_INTERP_SET(thx, interp) \ + ((XPVMG*)SvANY(*Perl_Imodglobal_ptr(thx)))->xmg_magic = (MAGIC*)interp +#else +#define MP_THX_INTERP_SET(thx, interp) \ HvPMROOT(*Perl_Imodglobal_ptr(thx)) = (PMOP*)interp +#endif const char *modperl_interp_scope_desc(modperl_interp_scope_e scope);