[cgiapp] Re: Problem with Flash, Session & persistent environment identified (Fix released)

Mark Stosberg mark at summersault.com
Fri Nov 21 21:03:43 EST 2008


> In the AUTOLOAD sub I think it is making a circular reference to the 
> CGIApp object ($c) since the sub creates a closure which is stored 
> inside of $c for the runmodes.
> 
> If inside that sub reference I add 'my $c = shift;' first the problem 
> goes away, but I am not sure if that breaks the plugin at all since I do 
> not use it.

Thanks to Bradley's report, I have now uploaded 1.20 of the ErrorPage
plugin, which makes the change he recommends. 

I'm less sure about what to do about DebugScreen using a global DIE
handler.  (And I don't maintain it, either). 

I'm not sure really a problem, either, especially as a tool meant to
only be enabled for debugging.

I didn't mean to say that there was a regular bug in CGI::Session, but
more that I consider the inclusion of autoflushing a design flaw,
because it leads to hard to track down problems where the symptom is
that flushing isn't happening but the cause is a circular reference
issue in some third-party module. 

Explicit flushing makes it clear what is happening and cannot trigger
this.

    Mark

-- 
http://mark.stosberg.com/





More information about the cgiapp mailing list