Any further thoughts on this, Cliff or anyone else? At least the core_output_filter, the byterange filter, and the http_header filter will all destroy the brigade which is passed to them. Many other filters presume that it's OK to reuse brigades which have been passed on.
With a combination of filters which assume both ways, it is inevitable that changing apr_brigade_destroy() to actually destroy the brigade structure will break some set of existing filters, unfortunately. There's also ambiguity about what to do with a passed brigade if the next filter returns an error. joe
