let crc_off = self.next_offset + len_size;
// TODO: read crc, optionally verify
let data_off = crc_off + std::mem::size_of::<u32>();
+ let comp = self.reader.metadata.compression_algorithm;
self.next_offset = data_off + size;
self.data_iter.replace(
- block::Block::new(CBuf::Buf(self.reader.data.clone_range(data_off, size)))
+ block::Block::new(comp.uncompress(self.reader.data.clone_range(data_off, size))?)
.expect("bad block")
.into_iter(),
);