Re: [mp2] reliable methods to prevent handlers from repeating

[prev] [thread] [next] [Date index for 2005/01/24]

From: Dorian Taylor
Subject: Re: [mp2] reliable methods to prevent handlers from repeating
Date: 21:23 on 24 Jan 2005
here's my solution to handler loop prevention when the initial
request to a handler isn't necessarily the main request:

sub handler {
    my $r  = shift;
    my $mr = $r->main || $r;
    if ($mr->notes->get(__PACKAGE__ . '::SEEN')) {
        $r->log->debug("We are looping.");
        return Apache::DECLINED;
    }
    $mr->notes->set(__PACKAGE__ . '::SEEN', 1);

    # ... do stuff, including other lookup_uri/lookup_file requests.

    $mr->notes->unset(__PACKAGE__ . '::SEEN');
    return Apache::OK; # or whatever other status
}

comments?

.dorian

Re: [mp2] reliable methods to prevent handlers from repeating
Philippe M. Chiasson 22:32 on 20 Jan 2005

Re: [mp2] reliable methods to prevent handlers from repeating
Dorian Taylor 21:23 on 24 Jan 2005

Generated at 17:42 on 27 Jan 2005 by mariachi v0.52