rust highlight error
Author: asukaminato0721Created Sep 19, 2026Updated Sep 19, 2026
Labelsbugreproduced
// Ported from GARbro ArcWARC.cs, Copyright (C) 2015-2017 morkt (MIT).
use anyhow::{Result, bail, ensure};
use std::io::Read;
pub const MAX_OUTPUT:usize=256*1024*1024;
pub fn zlib(input:&[u8],limit:usize)->Result<Vec<u8>> {
ensure!(limit<=MAX_OUTPUT,"decompression limit exceeds safety cap");
let mut output=Vec::new();
flate2::read::ZlibDecoder::new(input).take(limit as u64+1).read_to_end(&mut output)?;
ensure!(output.len()<=limit,"zlib output exceeds limit {limit}"); Ok(output)
}Source: sinelaw/fresh