As reported by Peter, handling of nested Files sections inside <Perl> 
doesn't work. I've debugged the problem, and the bug is simple, since 
the section is nested it has old_path in perl_filesection() set and the 
code inside this function simply contact this old_path with the pattern, 
which is wrong.

e.g. with:

$Directory{'/home/httpd/httpd_perl/docs/iperl'} = {
     Files =>  {
         '\.pl$' => {
         },
     },
};

you get the following trace:

perl_section: <Directory /home/httpd/httpd_perl/docs/iperl>
perl_section: <Files /home/httpd/httpd_perl/docs/iperl\.pl$>
perl_section: </Files>
perl_section: </Directory>

whereas the same plain Apache config section just works. I cannot create 
a patch, since I don't understand why the concatenation with old_path 
happens in first place. It's definitely bogus in this situation because, 
according to the spec:

   <Files foo.bar>

should match all "foo.bar" files in sub-dirs, whereas if you concat it 
with the directory it's included in, it won't.

Currently I've suggested Peter to use FilesMatch which ignores the value 
of old_path and therefore works.

Also I've noticed that the eagle book and the docs don't mention how to 
handle the case:

  <Files ~ '*.pl$'>

which I think should be converted as:

     Files =>  {
         "~ '\.pl$'" => {
         },

is that correct?

__________________________________________________________________
Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/     mod_perl Guide ---> http://perl.apache.org
mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com


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

Reply via email to