Torsten Foertsch wrote:
On Mon 18 Feb 2008, Torsten Foertsch wrote:
Here is a patch and a test case.

Forget the patch. It fixes the wrong place. The only other directive (that I know of) that uses the location path ProxyPassReverse also assumes that the pointer is valid for the whole request.

So the correct place to approach is our $r->add_config.

I don't understand how this is fixing the problem cleanly. What seems
to be the culprit is modperl_config_insert() keeping a hold of the path
longer than it might live. Wouldn't this patch solve the problem as
well, and more directly ?

Index: src/modules/perl/modperl_config.c
===================================================================
--- src/modules/perl/modperl_config.c   (revision 629347)
+++ src/modules/perl/modperl_config.c   (working copy)
@@ -518,7 +518,7 @@
     parms.limited = -1;
     parms.server = s;
     parms.override = override;
-    parms.path = path;
+    parms.path = apr_pstrdup(p, path);
     parms.pool = p;
 #ifdef MP_HTTPD_HAS_OVERRIDE_OPTS
     if (override_options == MP_HTTPD_OVERRIDE_OPTS_UNSET) {

--
Philippe M. Chiasson     GPG: F9BFE0C2480E7680 1AE53631CB32A107 88C3A5A5
http://gozer.ectoplasm.org/       m/gozer\@(apache|cpan|ectoplasm)\.org/

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to