avformat/mpegts: Check if ready on SCTE reception

On some DVB stream SCTE-35 data packet are available before the end of
MpegTSContext initialization. We have to check if it is the case to
avoid a SEGFAULT.

Signed-off-by: Marton Balint <cus@passwd.hu>
This commit is contained in:
Anthony Delannoy 2019-09-03 17:54:24 +02:00 committed by Marton Balint
parent 7eb465e185
commit 39f1295937

View File

@ -1725,6 +1725,13 @@ static void scte_data_cb(MpegTSFilter *filter, const uint8_t *section,
if (idx < 0)
return;
/**
* In case we receive an SCTE-35 packet before mpegts context is fully
* initialized.
*/
if (!ts->pkt)
return;
new_data_packet(section, section_len, ts->pkt);
ts->pkt->stream_index = idx;
prg = av_find_program_from_stream(ts->stream, NULL, idx);