MCPcopy Create free account
hub / github.com/cloud-hypervisor/cloud-hypervisor / decode

Method decode

block/src/qcow/decoder.rs:30–42  ·  view source on GitHub ↗
(&self, input: &[u8], output: &mut [u8])

Source from the content-addressed store, hash-verified

28
29impl Decoder for ZlibDecoder {
30 fn decode(&self, input: &[u8], output: &mut [u8]) -> Result<usize> {
31 use flate2::{Decompress, FlushDecompress, Status};
32
33 let mut decompressor = Decompress::new(false);
34 let status = decompressor
35 .decompress(input, output, FlushDecompress::Finish)
36 .map_err(Error::ZlibDecompress)?;
37 if status == Status::StreamEnd {
38 Ok(decompressor.total_out() as usize)
39 } else {
40 Err(Error::ZlibUnexpectedStatus(status))
41 }
42 }
43}
44
45#[derive(Default)]

Callers 5

decompress_clusterFunction · 0.80
decompress_l2_clusterMethod · 0.80
decompress_l2_clusterMethod · 0.80
test_zlib_decodeFunction · 0.80
test_zstd_decodeFunction · 0.80

Calls 2

newFunction · 0.85
readMethod · 0.45

Tested by 2

test_zlib_decodeFunction · 0.64
test_zstd_decodeFunction · 0.64