[libav-devel] [PATCH 3/5] svq1dec: avoid undefined get_bits(0) call
Måns Rullgård
mans at mansr.com
Sat Nov 26 18:07:17 CET 2011
Kostya Shishkov <kostya.shishkov at gmail.com> writes:
> On Sat, Nov 26, 2011 at 04:52:09PM +0000, Mans Rullgard wrote:
>> Signed-off-by: Mans Rullgard <mans at mansr.com>
>> ---
>> libavcodec/svq1dec.c | 3 ++-
>> 1 files changed, 2 insertions(+), 1 deletions(-)
>>
>> diff --git a/libavcodec/svq1dec.c b/libavcodec/svq1dec.c
>> index 8569615..7eb6e60 100644
>> --- a/libavcodec/svq1dec.c
>> +++ b/libavcodec/svq1dec.c
>> @@ -195,7 +195,8 @@ static const uint8_t string_table[256] = {
>>
>> #define SVQ1_CALC_CODEBOOK_ENTRIES(cbook)\
>> codebook = (const uint32_t *) cbook[level];\
>> - bit_cache = get_bits (bitbuf, 4*stages);\
>> + if (stages > 0)\
>> + bit_cache = get_bits (bitbuf, 4*stages);\
>> /* calculate codebook entries for this vector */\
>> for (j=0; j < stages; j++) {\
>> entries[j] = (((bit_cache >> (4*(stages - j - 1))) & 0xF) + 16*j) << (level + 1);\
>> --
>
> maybe set it to 0 for zero bits?
That would add overhead in cases where it's impossible for it to be
zero, which should be everywhere.
--
Måns Rullgård
mans at mansr.com
More information about the libav-devel
mailing list