On 25 Sep 2014, at 20:36, Luca Barbato <[email protected]> wrote:

> On 25/09/14 18:47, Tim Walker wrote:
>> From: Michael Niedermayer <[email protected]>
>> 
>> CC: [email protected]
>> Signed-off-by: Michael Niedermayer <[email protected]>
>> Signed-off-by: Tim Walker <[email protected]>
>> ---
>>  libavcodec/vc1dec.c | 4 ++--
>>  1 file changed, 2 insertions(+), 2 deletions(-)
>> 
>> diff --git a/libavcodec/vc1dec.c b/libavcodec/vc1dec.c
>> index 35245ab..41beaeb 100644
>> --- a/libavcodec/vc1dec.c
>> +++ b/libavcodec/vc1dec.c
>> @@ -4570,9 +4570,9 @@ static int vc1_decode_b_mb_intfr(VC1Context *v)
>>              if (mb_has_coeffs)
>>                  cbp = 1 + get_vlc2(&v->s.gb, v->cbpcy_vlc->table, 
>> VC1_CBPCY_P_VLC_BITS, 2);
>>              if (!direct) {
>> -                if (bmvtype == (BMV_TYPE_INTERPOLATED & twomv)) {
>> +                if (bmvtype == BMV_TYPE_INTERPOLATED && twomv) {
>>                      v->fourmvbp = get_vlc2(gb, v->fourmvbp_vlc->table, 
>> VC1_4MV_BLOCK_PATTERN_VLC_BITS, 1);
>> -                } else if (bmvtype == (BMV_TYPE_INTERPOLATED | twomv)) {
>> +                } else if (bmvtype == BMV_TYPE_INTERPOLATED || twomv) {
>>                      v->twomvbp = get_vlc2(gb, v->twomvbp_vlc->table, 
>> VC1_2MV_BLOCK_PATTERN_VLC_BITS, 1);
>>                  }
>>              }
>> 
> 
> Hopefully ok.
> 
> lu

It does fix a fairly obvious bug (see the sample for the vc1 test added in the 
patchset), and try decoding it with and without this patch ;)

Tim
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to