vl/mpeg12: make bitstream decoder more robust

Just another xine workaround.

Signed-off-by: Christian König <deathsimple@vodafone.de>
This commit is contained in:
Christian König 2012-03-08 11:25:14 +01:00
parent 9a3c2776ac
commit 85dbb22796
2 changed files with 2 additions and 1 deletions

View file

@ -825,6 +825,8 @@ decode_slice(struct vl_mpg12_bs *bs, struct pipe_video_buffer *target)
}
inc += vl_vlc_get_vlclbf(&bs->vlc, tbl_B1, 11);
if (x != -1) {
if (!inc)
return;
mb.num_skipped_macroblocks = inc - 1;
bs->decoder->decode_macroblock(bs->decoder, target, &bs->desc->base, &mb.base, 1);
}

View file

@ -271,7 +271,6 @@ vl_vlc_get_vlclbf(struct vl_vlc *vlc, const struct vl_vlc_entry *tbl, unsigned n
{
tbl += vl_vlc_peekbits(vlc, num_bits);
vl_vlc_eatbits(vlc, tbl->length);
assert(tbl->length);
return tbl->value;
}