diff --git a/libavcodec/mpeg12dec.c b/libavcodec/mpeg12dec.c index 914516bbd9..e109e6c8d3 100644 --- a/libavcodec/mpeg12dec.c +++ b/libavcodec/mpeg12dec.c @@ -2550,7 +2550,9 @@ static int decode_chunks(AVCodecContext *avctx, AVFrame *picture, } break; case EXT_START_CODE: - init_get_bits(&s2->gb, buf_ptr, input_size * 8); + ret = init_get_bits8(&s2->gb, buf_ptr, input_size); + if (ret < 0) + return ret; switch (get_bits(&s2->gb, 4)) { case 0x1: