dougm 01/08/29 22:15:51 Modified: src/modules/perl mod_perl.c modperl_filter.c modperl_types.h Log: change wbucket buffer api to use the address of r->output_filters so when a filter is removed from the chain, its is also remove from ours Revision Changes Path 1.63 +1 -1 modperl-2.0/src/modules/perl/mod_perl.c Index: mod_perl.c =================================================================== RCS file: /home/cvs/modperl-2.0/src/modules/perl/mod_perl.c,v retrieving revision 1.62 retrieving revision 1.63 diff -u -r1.62 -r1.63 --- mod_perl.c 2001/08/08 16:20:31 1.62 +++ mod_perl.c 2001/08/30 05:15:51 1.63 @@ -399,7 +399,7 @@ /* setup buffer for output */ rcfg->wbucket.pool = r->pool; - rcfg->wbucket.filters = r->output_filters; + rcfg->wbucket.filters = &r->output_filters; rcfg->wbucket.outcnt = 0; } 1.25 +2 -2 modperl-2.0/src/modules/perl/modperl_filter.c Index: modperl_filter.c =================================================================== RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_filter.c,v retrieving revision 1.24 retrieving revision 1.25 diff -u -r1.24 -r1.25 --- modperl_filter.c 2001/08/30 01:08:24 1.24 +++ modperl_filter.c 2001/08/30 05:15:51 1.25 @@ -34,7 +34,7 @@ MP_TRACE_f(MP_FUNC, "buffer length=%d\n", len); - return ap_pass_brigade(wb->filters, bb); + return ap_pass_brigade(*(wb->filters), bb); } MP_INLINE apr_status_t modperl_wbucket_flush(modperl_wbucket_t *wb) @@ -91,7 +91,7 @@ filter->bb = bb; filter->pool = p; filter->wbucket.pool = p; - filter->wbucket.filters = f->next; + filter->wbucket.filters = &f->next; filter->wbucket.outcnt = 0; MP_TRACE_f(MP_FUNC, "filter=0x%lx, mode=%s\n", 1.46 +1 -1 modperl-2.0/src/modules/perl/modperl_types.h Index: modperl_types.h =================================================================== RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_types.h,v retrieving revision 1.45 retrieving revision 1.46 diff -u -r1.45 -r1.46 --- modperl_types.h 2001/08/19 17:33:32 1.45 +++ modperl_types.h 2001/08/30 05:15:51 1.46 @@ -168,7 +168,7 @@ int outcnt; char outbuf[MP_IOBUFSIZE]; apr_pool_t *pool; - ap_filter_t *filters; + ap_filter_t **filters; int header_parse; request_rec *r; } modperl_wbucket_t;