]> wimlib.net Git - wimlib/blobdiff - src/compress_common.c
make_canonical_huffman_code(): Stricter validation of max_codeword_len
[wimlib] / src / compress_common.c
index 270b8cfe3b4ffd410a2cc02e0247e3327846f4a0..682a53c5f259e2416c995e6d88238f4070486949 100644 (file)
@@ -689,7 +689,7 @@ make_canonical_huffman_code(unsigned num_syms, unsigned max_codeword_len,
        /* Assumptions  */
        wimlib_assert2(num_syms >= 2);
        wimlib_assert2(num_syms <= (1 << NUM_SYMBOL_BITS));
-       wimlib_assert2(max_codeword_len > 0);
+       wimlib_assert2((1ULL << max_codeword_len) >= num_syms);
        wimlib_assert2(max_codeword_len <= 32);
 
        /* We begin by sorting the symbols primarily by frequency and