@@ -1052,7 +1052,9 @@ static av_cold int vorbis_decode_init(AVCodecContext *avctx)
return ret;
}
- init_get_bits(gb, header_start[0], header_len[0]*8);
+ ret = init_get_bits8(gb, header_start[0], header_len[0]);
+ if (ret < 0)
+ return ret;
hdr_type = get_bits(gb, 8);
if (hdr_type != 1) {
av_log(avctx, AV_LOG_ERROR, "First header is not the id header.\n");
@@ -1064,7 +1066,9 @@ static av_cold int vorbis_decode_init(AVCodecContext *avctx)
return ret;
}
- init_get_bits(gb, header_start[2], header_len[2]*8);
+ ret = init_get_bits8(gb, header_start[2], header_len[2]);
+ if (ret < 0)
+ return ret;
hdr_type = get_bits(gb, 8);
if (hdr_type != 5) {
av_log(avctx, AV_LOG_ERROR, "Third header is not the setup header.\n");