Hi,

Apache2__ServerUtil.h contains these lines:

static void mpxs_Apache2__ServerUtil_BOOT(pTHX)
{
    newCONSTSUB(PL_defstash, "Apache2::ServerUtil::server_root",
                newSVpv(ap_server_root, 0));

    newCONSTSUB(PL_defstash, "Apache2::ServerUtil::get_server_built",
                newSVpv(ap_get_server_built(), 0));

    newCONSTSUB(PL_defstash, "Apache2::ServerUtil::get_server_version",
                newSVpv(ap_get_server_version(), 0));

    newCONSTSUB(PL_defstash, "Apache2::ServerUtil::get_server_banner",
                newSVpv(ap_get_server_banner(), 0));

    newCONSTSUB(PL_defstash, "Apache2::ServerUtil::get_server_description",
                newSVpv(ap_get_server_description(), 0));
}

The problem is that way get_server_banner() and get_server_description() are 
constants. They are instantiated at the time the module is loaded. But 
Apache2::ServerUtil can be loaded in a <Perl> container. At that time banner 
and description are not yet constant. Modules may add components in open_logs 
and post_config.

The fix is really simple. I have just uploaded Apache2::Banner that does it 
externally (for those who still have to use 2.0.4). Would be good to fix that 
in the next mp2 version.

Torsten Förtsch

-- 
Need professional modperl support? Hire me! (http://foertsch.name)

Like fantasy? http://kabatinte.net

Reply via email to