Hi Phillipe :)
Here is the unit test I was telling you about for the bug I found where
pushing handlers onto a different phase of the request cycle causes the
push to act as a set_handler instead. I dug into the guts of
modperl_handler.c looking for what is causing this but I'm still green
in dealing with the mod_perl internals.
I'll track you down later and demonstrate this issue.
- Fred
Index: t/hooks/TestHooks/stacked_handlers2.pm
===================================================================
--- t/hooks/TestHooks/stacked_handlers2.pm (revision 584452)
+++ t/hooks/TestHooks/stacked_handlers2.pm (working copy)
@@ -45,6 +45,17 @@
return Apache2::Const::SERVER_ERROR;
}
+sub push_fixup_handler {
+
+ my $r = shift;
+
+ $r->push_handlers(PerlFixupHandler => \&ok);
+
+ callback($r);
+
+ return Apache2::Const::OK;
+}
+
sub push_handlers {
my $r = shift;
@@ -150,7 +161,8 @@
PerlModule TestHooks::stacked_handlers2
- # all 2 run
+ # all 3 run
+ PerlPostReadRequestHandler
TestHooks::stacked_handlers2::push_fixup_handler
PerlPostReadRequestHandler TestHooks::stacked_handlers2::ok
TestHooks::stacked_handlers2::ok
# 1 run, 1 left behind
Index: t/hooks/stacked_handlers2.t
===================================================================
--- t/hooks/stacked_handlers2.t (revision 584452)
+++ t/hooks/stacked_handlers2.t (working copy)
@@ -18,7 +18,7 @@
plan tests => 1;
-my $expected = q!ran 2 PerlPostReadRequestHandler handlers
+my $expected = q!ran 3 PerlPostReadRequestHandler handlers
ran 1 PerlTransHandler handlers
ran 1 PerlMapToStorageHandler handlers
ran 4 PerlHeaderParserHandler handlers
@@ -26,7 +26,7 @@
ran 2 PerlAuthenHandler handlers
ran 2 PerlAuthzHandler handlers
ran 1 PerlTypeHandler handlers
-ran 4 PerlFixupHandler handlers
+ran 3 PerlFixupHandler handlers
ran 2 PerlResponseHandler handlers
ran 2 PerlOutputFilterHandler handlers!;
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]