aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDi Wu <di1028.wu@samsung.com>2014-10-15 16:24:21 +0800
committerMichael Niedermayer <michaelni@gmx.at>2014-10-16 04:21:21 +0200
commit0e406aba14a89e94b31afde02b6bc0f456b113f5 (patch)
tree7e38bd21f1c9ab2437d86c142a44e8d224acd03c
parentd267a0f8c1a8f950abe0043dc7b9b29835ed1dc2 (diff)
downloadffmpeg-0e406aba14a89e94b31afde02b6bc0f456b113f5.tar.gz
mpegts: add the judgement if a new program is created successfully
Add the judement after create a new program to avoid segment fault. Signed-off-by: Di Wu <di1028.wu@samsung.com> Reviewed-by: Marton Balint <cus@passwd.hu> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r--libavformat/mpegts.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c
index 88082692b1..cc0ce790f0 100644
--- a/libavformat/mpegts.c
+++ b/libavformat/mpegts.c
@@ -1925,8 +1925,10 @@ static void pat_cb(MpegTSFilter *filter, const uint8_t *section, int section_len
} else {
MpegTSFilter *fil = ts->pids[pmt_pid];
program = av_new_program(ts->stream, sid);
- program->program_num = sid;
- program->pmt_pid = pmt_pid;
+ if (program) {
+ program->program_num = sid;
+ program->pmt_pid = pmt_pid;
+ }
if (fil)
if ( fil->type != MPEGTS_SECTION
|| fil->pid != pmt_pid