From aa95516d3d509c6b7895ee519004afcf500a0759 Mon Sep 17 00:00:00 2001 From: Lasse Collin Date: Sat, 2 Apr 2011 14:49:56 +0300 Subject: [PATCH] liblzma: Fix a memory leak in stream_encoder.c. It leaks old filter options structures (hundred bytes or so) every time the lzma_stream is reinitialized. With the xz tool, this happens when compressing multiple files. --- src/liblzma/common/stream_encoder.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/liblzma/common/stream_encoder.c b/src/liblzma/common/stream_encoder.c index 48d91da7..97a7a23a 100644 --- a/src/liblzma/common/stream_encoder.c +++ b/src/liblzma/common/stream_encoder.c @@ -280,6 +280,7 @@ lzma_stream_encoder_init(lzma_next_coder *next, lzma_allocator *allocator, next->end = &stream_encoder_end; next->update = &stream_encoder_update; + next->coder->filters[0].id = LZMA_VLI_UNKNOWN; next->coder->block_encoder = LZMA_NEXT_CODER_INIT; next->coder->index_encoder = LZMA_NEXT_CODER_INIT; next->coder->index = NULL; @@ -289,7 +290,6 @@ lzma_stream_encoder_init(lzma_next_coder *next, lzma_allocator *allocator, next->coder->sequence = SEQ_STREAM_HEADER; next->coder->block_options.version = 0; next->coder->block_options.check = check; - next->coder->filters[0].id = LZMA_VLI_UNKNOWN; // Initialize the Index lzma_index_end(next->coder->index, allocator);