On Fri, Jul 20, 2018 at 12:08 PM, Ruediger Pluem <rpl...@apache.org> wrote: > > On 07/19/2018 12:36 AM, yla...@apache.org wrote: >> >> - if (!c->data_in_input_filters || ap_run_input_pending(c) != OK) { >> + if (ap_run_input_pending(c) != OK) { > > We have a different code flow here now. If c->data_in_input_filters is 0, then > ap_filter_input_pending does iterate over the ring whereas it did not do > before, > because it was not called.
Right, though ap_filter_input_pending() iteration is quite cheap, and could be even cheaper if pending input and output filters were handled separetely (next step...). I prefer to keep the logic in ap_filter_*_pending() if you don't mind, and avoid global c->data_in_*_filter checks all over the place (possibly they'll disappear from conn_rec some day). For now c->data_in_*_filter are used internally (core) to positively force pending data, never negatively (and that's wise I think). Regards, Yann.