X-Git-Url: https://git.nihav.org/?a=blobdiff_plain;f=src%2Fio%2Fcodebook.rs;h=3d1e8d0e0112e2d2032788e6723bfb17f06014a0;hb=1f7e9371e2ec548b6821bb01ce7ba82c4cd8068d;hp=5bfd71991e186cfe7c855d2ce11411e1d27d8a59;hpb=6465a94691189acfc2fc2909e6e24442a1f0b700;p=nihav.git diff --git a/src/io/codebook.rs b/src/io/codebook.rs index 5bfd719..3d1e8d0 100644 --- a/src/io/codebook.rs +++ b/src/io/codebook.rs @@ -195,7 +195,12 @@ impl Codebook { let mut symidx: usize = 0; for i in 0..cb.len() { let bits = cb.bits(i); - if bits > 0 { nnz = nnz + 1; } + if bits > 0 { + nnz = nnz + 1; + if cb.code(i) >= (1 << bits) { + return Err(CodebookError::InvalidCodebook); + } + } maxbits = max(bits, maxbits); if bits > MAX_LUT_BITS { let code = cb.code(i);