Created attachment 29252 [details] Proposed patch Hi, 'apr_brigade_puts' has some logic to put by itself data in heap bucket at the end of the brigade or call 'apr_brigade_write' in all other cases. AFAIK, all this logic is already part of 'apr_brigade_write'. This only difference I see is in computation of the remaining space : 'apr_brigade_puts' apr_size_t bytes_avail = h->alloc_len - bkt->length; 'apr_brigade_write' remaining = h->alloc_len - (e->length + (apr_size_t)e->start); I don't really understand why it is different and what the 'e->start' stands for. Anyway, I think it is safe to simplify 'apr_brigade_puts'. Best regards.
r1402870
fixed in 1.5.2