blk2 = 0;
for (blk = 0; blk < blocks; blk++) {
if (!(blk & 3)) {
+ if (bytestream2_get_bytes_left(&g) < 1) {
+ av_log(c->avctx, AV_LOG_ERROR, "Insufficient data\n");
+ return AVERROR_INVALIDDATA;
+ }
blocktypes = bytestream2_get_byte(&g);
}
switch (blocktypes & 0xC0) {
uint32_t size;
int offset = 0;
+ if (avpkt->size < 2)
+ return AVERROR_INVALIDDATA;
+
bytestream2_init(&c->stream, avpkt->data, avpkt->size);
if ((ret = ff_get_buffer(avctx, frame, 0)) < 0)