mpegts: Make sure we don't return uninitialized packets
This fixes crashes, where the demuxer could return 0 even if the returned AVPacket isn't initialized at all. This could happen if running into EOF or running out of probesize with non-seekable sources. Signed-off-by: Martin Storsjö <martin@martin.st>
This commit is contained in:
parent
1b4f085772
commit
df8aa4598c
|
@ -2020,6 +2020,7 @@ static int mpegts_read_packet(AVFormatContext *s,
|
|||
MpegTSContext *ts = s->priv_data;
|
||||
int ret, i;
|
||||
|
||||
pkt->size = -1;
|
||||
ts->pkt = pkt;
|
||||
ret = handle_packets(ts, 0);
|
||||
if (ret < 0) {
|
||||
|
@ -2037,6 +2038,8 @@ static int mpegts_read_packet(AVFormatContext *s,
|
|||
}
|
||||
}
|
||||
|
||||
if (!ret && pkt->size < 0)
|
||||
ret = AVERROR(EINTR);
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user