apr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Cliff Woolley <cliffwool...@yahoo.com>
Subject Re: segv after client closes connection
Date Thu, 15 Nov 2001 06:46:27 GMT
On Wed, 14 Nov 2001, Ryan Bloom wrote:

> I couldn't decide if it was bad mojo or not, which is why I didn't
> just commit it.  The structures will still be valid BTW, the only real
> difference is that we run cleanups before we destroy memory.

Not exactly.  Before, the subpools were being destroyed before the current
pool's cleanups would be run.  So if you allocate some thing (foo) out of
the subpool that depends upon a thing (bar) that is allocated out of the
parent pool, when you run the cleanup on foo it probably needs bar to
still exist for the cleanup to work.  With the way it was before, that
guarantee would be met, since we recurse before we cleanup ourselves.
But with this patch, we clean up ourselves before we recurse, so bar would
be cleaned up before foo, and foo's cleanup could quite likely barf.

> The other solution may be to remove the sub-pool from the
> core_output_filter. I need to understand why we have it first though.

I'll have to look more at that, too... it does seem like a possible
alternative.

--Cliff

--------------------------------------------------------------
   Cliff Woolley
   cliffwoolley@yahoo.com
   Charlottesville, VA



Mime
View raw message