I'm not on the list so please CC me on any replies.

It seems that using Apache::Request and $r->internal_redirect is not a
good idea. The code fragment:

    119     my $mstatus = $mh->handle_request($r);
    120     if ($mstatus != HTTP_OK) {
    121         my $filename = $r->filename;
    122         $filename =~ s,^(.*)/.*$,$1/error.html,;
    123         print STDERR "Redirecting to $filename\n";
    124         my $rstatus = $r->internal_redirect_handler($filename);
    125         print STDERR "Internal redirect done\n";
    126         return $rstatus;

The request object creates itself as undefined data the second time
around, and the web server does not succeed in the redirect. Even though I
have passed my Anarres::Request (inheriting Apache::Request) to the
internal_redirect method, Apache creates a new Apache object and uses that
in the subrequest.

I want the parameters from the first request to be preserved into the
subrequest.

Another minor issue is that Apache::Request is not trivially subclassed,
the returned value from $self->SUPER::new() must be reblessed into the
desired class.

S.

--
Shevek
I am the Borg.
sub AUTOLOAD { ($s=$AUTOLOAD)=~s/.*:://; eval qq{ *$AUTOLOAD=$s
?sub {$s*&{$s-1}} :sub {1}; }; goto &$AUTOLOAD; } print &{'4'}; 

Reply via email to