On Nov 21, 2007 9:54 AM, David Eisner <[EMAIL PROTECTED]> wrote:
> httpd segfaults when I access this CGI, on the second or subsequent
> access (but not the first) after restarting the server:
>
>     use CGI qw/:standard/;
>     use strict;
>
>     my $q = CGI->new();
>     handle_response();
>     exit(0);
>
>
>     sub handle_response() {
>         $q->redirect( "http://slashdot.org"; );
>     }

You're creating a closure.  The CGI object created on the first
request gets stuck in your handle_response sub and tries to use a
reference to an old Apache2::RequestRec object.

You need to pass $q to your sub every time.  You can't just access it
directly from the enclosing scope.

- Perrin

Reply via email to