On 01/04/2009 06:28 PM, Rainer Jung wrote:
> On 04.01.2009 17:57, Rainer Jung wrote:
>> When the content file gets opened, its cleanup is correctly registered
>> with the request pool. Later in core_filters.c at the end of function
>> ap_core_output_filter() line 528 we call setaside_remaining_output().
> 
> ...
> 
>> 2.2.x has a different structure, although I can also see two calls to
>> ap_save_brigade() in ap_core_output_filter(), but they use different
>> pools as new targets, namely a deferred_write_pool resp. input_pool.
> 
> And the code already contains the appropriate hint:
> 
> static void setaside_remaining_output(...)
> {
> ...
>         if (make_a_copy) {
>             /* XXX should this use a separate deferred write pool, like
>              * the original ap_core_output_filter?
>              */
>             ap_save_brigade(f, &(ctx->buffered_bb), &bb, c->pool);
> ...
> }
> 

Thanks for the analysis and good catch. Maybe I have a look into this by
tomorrow.

Regards

RĂ¼diger

Reply via email to