matts       2003/02/17 02:47:00

  Modified:    lib/Apache/AxKit/Provider File.pm
  Log:
  Really fix provider directory handling
  
  Revision  Changes    Path
  1.14      +14 -2     xml-axkit/lib/Apache/AxKit/Provider/File.pm
  
  Index: File.pm
  ===================================================================
  RCS file: /home/cvs/xml-axkit/lib/Apache/AxKit/Provider/File.pm,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- File.pm   17 Feb 2003 10:31:41 -0000      1.13
  +++ File.pm   17 Feb 2003 10:47:00 -0000      1.14
  @@ -149,6 +149,15 @@
        return undef;
   }
   
  +sub decline {
  +    my $self = shift;
  +    if ($self->_is_dir) {
  +        $self->{apache}->header_out('Location' => $self->{apache}->uri . 
"/");
  +        return 302;
  +    }
  +    return $self->SUPER::decline();
  +}
  +
   sub process {
       my $self = shift;
   
  @@ -162,7 +171,10 @@
       if ( $self->_is_dir ) {
           # process directories if AxHandleDirs is On and dir ends in /
           # (otherwise we decline and let apache redirect)
  -        if ($AxKit::Cfg->HandleDirs() && $xmlfile =~ /\/$/) {
  +        if ($AxKit::Cfg->HandleDirs()) {
  +            if ($self->{apache}->uri !~ /\/$/) {
  +                return 0;
  +            }
            my $output = $self->get_dir_xml();
            return 0 if (!defined $output);
            $self->{dir_xml} = $output;
  
  
  

Reply via email to