diff --git a/ext/standard/filters.c b/ext/standard/filters.c index 12166a8cc65..1b5a991be25 100644 --- a/ext/standard/filters.c +++ b/ext/standard/filters.c @@ -1507,6 +1507,8 @@ static php_stream_filter_status_t strfilter_convert_filter( if (out_buf_size - ocnt > 0) { new_bucket = php_stream_bucket_new(stream, out_buf, (out_buf_size - ocnt), 1, inst->persistent TSRMLS_CC); php_stream_bucket_append(buckets_out, new_bucket TSRMLS_CC); + } else { + pefree(out_buf, inst->persistent); } } else { while (buckets_in->head != NULL) {