On Sunday, 09. June 2002 23:33, Matt Sergeant wrote:

> OK, but I thought you had said (on IRC) that removing the
> "remove_module_cleanup" section fixed the problem? Does removing that make
> it send the correct pool? If so, I think it's probably an issue with that
> function, rather than necessarily a bug in Apache...

Well, it looked like it did, but I did not investigate why, since the real 
error is in a different place. Maybe I just used a wrong httpd.conf while 
testing that. During the config-test phase the remove handler isn't yet 
called, but the behaviour of apache is the same (not creating 
server_configs). The apache source is quite concise, too: they blindly pass 
the 'current' pool to both, create_dir_config and create_server_config - 
these two always get the same pool when called together. (http_config.c:1005: 
ap_set_config_vectors).

> We should also check to see if anyone else has ever written a per-server
> config directive in mod_perl - that may lead to Doug figuring out the
> "right" fix.

As far as I can see, this is a genuine apache bug and has nothing to do with 
axkit or mod_perl. The correct solution would be something like this diff:

(around http_config.c:1005: ap_set_config_vectors)
    if (!sconfig && mod->create_server_config) {
-        sconfig = (*mod->create_server_config) (parms->pool, parms->server);
+        sconfig = (*mod->create_server_config) (pconf, parms->server);
        ap_set_module_config(parms->server->module_config, mod, sconfig);
    }

But both, pconf and the internal structure of type (pool*) are private to 
alloc.c, thus there is no easy way to find a "global enough" pool.

-- 
CU
        Joerg

PGP Public Key at http://ich.bin.kein.hoschi.de/~trouble/public_key.asc
PGP Key fingerprint = D34F 57C4 99D8 8F16 E16E  7779 CDDC 41A4 4C48 6F94


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to