diff options
Diffstat (limited to '')
-rw-r--r-- | src/liblzma/common/block_encoder.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/liblzma/common/block_encoder.c b/src/liblzma/common/block_encoder.c index 567889aa..ca515235 100644 --- a/src/liblzma/common/block_encoder.c +++ b/src/liblzma/common/block_encoder.c @@ -142,6 +142,19 @@ block_encoder_end(lzma_coder *coder, lzma_allocator *allocator) } +static lzma_ret +block_encoder_update(lzma_coder *coder, lzma_allocator *allocator, + const lzma_filter *filters lzma_attribute((unused)), + const lzma_filter *reversed_filters) +{ + if (coder->sequence != SEQ_CODE) + return LZMA_PROG_ERROR; + + return lzma_next_filter_update( + &coder->next, allocator, reversed_filters); +} + + extern lzma_ret lzma_block_encoder_init(lzma_next_coder *next, lzma_allocator *allocator, lzma_block *block) @@ -167,6 +180,7 @@ lzma_block_encoder_init(lzma_next_coder *next, lzma_allocator *allocator, next->code = &block_encode; next->end = &block_encoder_end; + next->update = &block_encoder_update; next->coder->next = LZMA_NEXT_CODER_INIT; } |