Make sure huffman trees always have valid symbols

- Symbols added to the tree are valid inside HuffmanTreeBuildExplicit().
- In HuffmanTreeBuildImplicit(), make sure 'root_symbol' is
valid in case of a single symbol tree.

Change-Id: I7de5de71ff28f41e2d6228b29ed8dd4a20813e99
This commit is contained in:
Urvang Joshi
2012-05-10 11:37:17 +05:30
parent 4105061840
commit 14757f8ae2
3 changed files with 14 additions and 6 deletions

View File

@ -250,8 +250,8 @@ static int ReadHuffmanCode(int alphabet_size, VP8LDecoder* const dec,
codes[1] = 1;
code_lengths[1] = num_symbols - 1;
}
ok = HuffmanTreeBuildExplicit(tree, code_lengths, codes,
symbols, num_symbols);
ok = HuffmanTreeBuildExplicit(tree, code_lengths, codes, symbols,
alphabet_size, num_symbols);
} else { // Decode Huffman-coded code lengths.
int* code_lengths = NULL;
int i;