提交 a29a0aba 编写于 作者: P Paul B Mahol

avformat/ty: do not overread chunk

Signed-off-by: NPaul B Mahol <onemda@gmail.com>
上级 cdd19e2c
......@@ -249,7 +249,11 @@ static int analyze_chunk(AVFormatContext *s, const uint8_t *chunk)
* in MPEG packets to determine tivo_type */
if (ty->tivo_type == TIVO_TYPE_UNKNOWN) {
uint32_t data_offset = 16 * num_recs;
for (i = 0; i < num_recs; i++) {
if (data_offset + hdrs[i].rec_size > CHUNK_SIZE)
break;
if ((hdrs[i].subrec_type << 0x08 | hdrs[i].rec_type) == 0x3c0 && hdrs[i].rec_size > 15) {
/* first make sure we're aligned */
int pes_offset = find_es_header(ty_MPEGAudioPacket,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册