diff --git a/libavcodec/vp3.c b/libavcodec/vp3.c index f10fa5a8f3..09e6f75ec4 100644 --- a/libavcodec/vp3.c +++ b/libavcodec/vp3.c @@ -2475,6 +2475,7 @@ static av_cold int theora_decode_init(AVCodecContext *avctx) const uint8_t *header_start[3]; int header_len[3]; int i; + int ret; avctx->pix_fmt = AV_PIX_FMT_YUV420P; @@ -2494,7 +2495,9 @@ static av_cold int theora_decode_init(AVCodecContext *avctx) for (i = 0; i < 3; i++) { if (header_len[i] <= 0) continue; - init_get_bits8(&gb, header_start[i], header_len[i]); + ret = init_get_bits8(&gb, header_start[i], header_len[i]); + if (ret < 0) + return ret; ptype = get_bits(&gb, 8);