[Catalyst] App breaks after updating to Catalyst::Plugin::Session::State::URI v0.14

Charlie Garrison garrison at zeta.org.au
Thu Aug 19 17:12:47 GMT 2010

Good morning,

On 19/08/10 at 9:12 AM -0700, Bryan Opfer <b at opfermail.com> wrote:

>I have the same exact behavior in my app after upgrading to 0.14.  So,
>I don't think it is just your app.  Interestingly, if I remove "param"
>from my config and use the mode where the session id is appended to
>the URI, then things work fine.  But, if I use the session id in the
>param, it breaks just like your app.

We're hitting the same thing then. I've just been playing with 
C::P::Session::State::URI code and found that if I change line 
323 from:

         if ( my $sid = $c->request->param($param) ) {


         if ( my $sid = 0 ) {

then the problem goes away. So without knowing more about Cat 
internals I would conclude that calling $c->request->param 
during `prepare_path` is creating problems elsewhere. I also tried:

         if ( my $sid = $c->request->parameters->{$param} ) {

And that fails as well.

I've tried following the code logic but I'm quickly getting lost 
in all the different prepare_* methods spread among Catalyst.pm 
and the different C::Engine modules.

For now I've changed C::P::Session::State::URI with `sub 
prepare_action {...]` rather than `prepare_path` and my app is 
working. Hopefully someone with some better ideas than me can 
suggest what the proper fix is.


    Ꮚ Charlie Garrison ♊ <garrison at zeta.org.au>

O< ascii ribbon campaign - stop html mail - www.asciiribbon.org
〠  http://www.ietf.org/rfc/rfc1855.txt

More information about the Catalyst mailing list