Hi,
I just ran into a problem with $r->register_cleanup() only sometime beeing
called.
This is mod_perl 1.24_01, perl 5.6.0, apache 1.3.14 compiled with gcc 5.6.0 on
AIX 4.3.3.
Here's a sample code (snippet):
sub handler { # PerlTransHandler
my $r = shift;
$r->register_cleanup(\&clean1);
$r->push_handlers(PerlCleanupHandler => \&clean2);
$r->pnotes('cleanup', bless {} );
print STDERR 'in ";
return DECLINE;
}
sub clean1 { print STDERR "register_cleanup "; }
sub clean2 { print STDERR "push_handlers "; }
sub DESTROY { print STDERR "DESTROY\n"; }
And that's the error_log:
in register_cleanup push_handlers DESTROY
in register_cleanup push_handlers DESTROY
in push_handlers DESTROY
in push_handlers DESTROY
in push_handlers DESTROY
in register_cleanup push_handlers DESTROY
in push_handlers DESTROY
in push_handlers DESTROY
in push_handlers DESTROY
in push_handlers DESTROY
in push_handlers DESTROY
in push_handlers DESTROY
in push_handlers DESTROY
in push_handlers DESTROY
in register_cleanup push_handlers DESTROY
in push_handlers DESTROY
....
The pushed handler only get's called about a third or less of the time. :-(
Any idea, bug?
Michael Jacob
PS: Yes I did some tests with -x...