SVQ3: Fix decoding with A32_BITSTREAM_READER

svq3_decode_slice_header() modifies the buffer used by the bitstream
reader.  Some of the bitstream readers cache a few bytes of data, which
must be flushed after such a modification.  Calling skip_bits_long(gb, 0)
achieves this.

Originally committed as revision 17680 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Måns Rullgård 2009-03-01 12:11:07 +00:00
parent 4cd19f6e78
commit db794291a2

View File

@ -724,6 +724,7 @@ static int svq3_decode_slice_header(H264Context *h)
memcpy((uint8_t *) &s->gb.buffer[get_bits_count(&s->gb) >> 3],
&s->gb.buffer[s->gb.size_in_bits >> 3], (length - 1));
}
skip_bits_long(&s->gb, 0);
}
if ((i = svq3_get_ue_golomb(&s->gb)) == INVALID_VLC || i >= 3){