From f291e37ec185c622c988def2fb9e1c960023402f Mon Sep 17 00:00:00 2001 From: Thomas Schmitt Date: Thu, 15 Oct 2020 14:13:38 +0200 Subject: [PATCH] Fixed wrong start block pointer of zisofs2 compression --- libisofs/filters/zisofs.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/libisofs/filters/zisofs.c b/libisofs/filters/zisofs.c index 5c45490..50b5a73 100644 --- a/libisofs/filters/zisofs.c +++ b/libisofs/filters/zisofs.c @@ -555,7 +555,12 @@ int ziso_stream_compress(IsoStream *stream, void *buf, size_t desired) if (rng->block_pointer_rpos >= rng->block_pointer_fill) { rng->buffer_fill = rng->buffer_rpos = 0; rng->block_counter = 0; - data->block_pointers[0] = 16 + rng->block_pointer_fill * 4; + if (rng->zisofs_version == 1) + data->block_pointers[0] = 16 + + rng->block_pointer_fill * 4; + else + data->block_pointers[0] = 24 + + rng->block_pointer_fill * 8; rng->state = 2; /* block pointers are delivered */ } else { /* Provide a buffer full of block pointers */