Build of mod_perl 2.0.0 fails on bleadperl - no more HvPMROOT()
[prev]
[thread]
[next]
[Date index for 2005/05/27]
As of about a week ago, PMROOT was removed from the HV struct and
moved off to magic. Unfortunately, mod_perl seems to be using
the HvPMROOT() macro to store away the modperl_interp_t
pointer in modperl_interp.h. The comments seem to indicate that
mod_perl isn't using PMROOT for its intended purpose, but instead
as a quick place to store the interp pointer.
So, mod_perl is going to need a new place to put the interp
pointer. I'm guessing that it could use PMROOT's new place in
magic. Code like the following would probably work get the
magic. I haven't tested it, but the code for MP_THX_INTERP_SET
would look like...
#define MP_THX_INTERP_SET(thx, interp) \
# ifndef(HvPMROOT)
MAGIC *mg = mg_find((SV*)thx, PERL_MAGIC_symtab); \
mg->mg_obj = (SV*)interp
# else
<current code>
Of course, there may be a much better place or way of doing it
which I don't know about. I'm just hoping to start some discussion
instead of it being a surprise when 5.9.3 is released.
Steve Peters
steve@xxxxxxxxxxx.xxx
 |
Build of mod_perl 2.0.0 fails on bleadperl - no more HvPMROOT()
Steve Peters 14:14 on 27 May 2005
|