mirror of
https://github.com/quickwit-oss/tantivy.git
synced 2026-01-06 09:12:55 +00:00
fix snap version, fix naming
This commit is contained in:
@@ -23,7 +23,7 @@ memmap = {version = "0.7", optional=true}
|
||||
lz4_flex = { version = "0.7", default-features = false, features = ["checked-decode"], optional=true }
|
||||
lz4 = {version="1", optional=true}
|
||||
brotli = {version="3.3.0", optional=true}
|
||||
snap = {version="1.0", optional=true}
|
||||
snap = {version="1", optional=true}
|
||||
tempfile = {version="3", optional=true}
|
||||
log = "0.4"
|
||||
serde = {version="1", features=["derive"]}
|
||||
|
||||
@@ -12,11 +12,8 @@ pub fn compress(uncompressed: &[u8], compressed: &mut Vec<u8>) -> io::Result<()>
|
||||
|
||||
compressed.extend_from_slice(&[0, 0, 0, 0]);
|
||||
compress_into(uncompressed, compressed);
|
||||
let size = uncompressed.len() as u32;
|
||||
compressed[0] = size as u8;
|
||||
compressed[1] = (size >> 8) as u8;
|
||||
compressed[2] = (size >> 16) as u8;
|
||||
compressed[3] = (size >> 24) as u8;
|
||||
let num_bytes = uncompressed.len() as u32;
|
||||
compressed[0..4].copy_from_slice(&num_bytes.to_le_bytes());
|
||||
Ok(())
|
||||
}
|
||||
|
||||
@@ -24,9 +21,12 @@ pub fn decompress(compressed: &[u8], decompressed: &mut Vec<u8>) -> io::Result<(
|
||||
decompressed.clear();
|
||||
//next lz4_flex version will support slice as input parameter.
|
||||
//this will make the usage much less ugly
|
||||
let size = compressed.get(..4).ok_or(io::ErrorKind::InvalidData)?;
|
||||
let size: &[u8; 4] = size.try_into().unwrap();
|
||||
let uncompressed_size = u32::from_le_bytes(*size) as usize;
|
||||
let uncompressed_size_bytes: &[u8; 4] = compressed
|
||||
.get(..4)
|
||||
.ok_or(io::ErrorKind::InvalidData)?
|
||||
.try_into()
|
||||
.unwrap();
|
||||
let uncompressed_size = u32::from_le_bytes(*uncompressed_size_bytes) as usize;
|
||||
// reserve more than required, because blocked writes may write out of bounds, will be improved
|
||||
// with lz4_flex 1.0
|
||||
decompressed.reserve(uncompressed_size + 4 + 24);
|
||||
|
||||
Reference in New Issue
Block a user