[Catalyst-dev] Re: A forwarding detach within auto continues processing

Ton Voon tonvoon at gmail.com
Fri May 6 07:52:46 GMT 2011


On 4 May 2011, at 17:41, Ton Voon wrote:

> Hi!
> 
> In my app, I have an auto action which forwards to another location to do some common work. In this forwarded action, a $c->detach("/soft_error") is run if a known error condition has occurred.
> 
> However, it seems that running the detach from an auto doesn't stop further processing as Catalyst continues the dispatch.
> 
> I've attached a testcase (diff off 5.80032) to demonstrate the issue. I've updated t/aggregate/live_component_controller_action_auto.t and created a new test controller Detach.pm.
> 
> If I run $c->detach from the forwarded action, this seems to be fine. It is only if I pass an action to detach that the problem occurs. And only if run from auto.
> 
> Is this correct behaviour or have I found a bug?
> 
> Ton
> 
> <detach_from_forwarded_auto_continues_processing.diff>

For information, I was speaking to mst on IRC and we worked through a patch for this in Catalyst->execute. This has been committed into master: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=catagits/Catalyst-Runtime.git;a=commitdiff;h=2688734f3a611b95e5c1f82c0c248c462d1eaa6b

Ton




More information about the Catalyst-dev mailing list