s->last_superframe_len = 0;
return 0;
}
- if (buf_size < s->block_align)
- return AVERROR(EINVAL);
+ if (buf_size < s->block_align) {
+ av_log(avctx, AV_LOG_ERROR,
+ "Input packet size too small (%d < %d)\n",
+ buf_size, s->block_align);
+ return AVERROR_INVALIDDATA;
+ }
- buf_size = s->block_align;
+ if(s->block_align)
+ buf_size = s->block_align;
init_get_bits(&s->gb, buf, buf_size*8);
--- /dev/null
- c4e12d7ed2ab47d43b912eb160a2bea8 *./tests/data/lavf/lavf.ismv
- 312247 ./tests/data/lavf/lavf.ismv
++eb116b60befadfd5c9118635d81c5a6e *./tests/data/lavf/lavf.ismv
++312271 ./tests/data/lavf/lavf.ismv
+./tests/data/lavf/lavf.ismv CRC=0xbcc963fc
- 44c724f5dd12436d283aacc95065ad7f *./tests/data/lavf/lavf.ismv
- 321521 ./tests/data/lavf/lavf.ismv
++90db70a6f33cf22db9ce242087b5870b *./tests/data/lavf/lavf.ismv
++321545 ./tests/data/lavf/lavf.ismv
+./tests/data/lavf/lavf.ismv CRC=0x3998478f
- c4e12d7ed2ab47d43b912eb160a2bea8 *./tests/data/lavf/lavf.ismv
- 312247 ./tests/data/lavf/lavf.ismv
++eb116b60befadfd5c9118635d81c5a6e *./tests/data/lavf/lavf.ismv
++312271 ./tests/data/lavf/lavf.ismv
+./tests/data/lavf/lavf.ismv CRC=0xbcc963fc