libavformat/rtpenc_mpegts: check avformat_new_stream() return value
authorPan Bian <bianpan2016@163.com>
Mon, 27 Nov 2017 01:30:53 +0000 (09:30 +0800)
committerMichael Niedermayer <michael@niedermayer.cc>
Tue, 28 Nov 2017 00:18:22 +0000 (01:18 +0100)
The function avformat_new_stream() returns a NULL pointer on failure.
However, in function rtp_mpegts_write_header(), its return value is not
validated before it is dereferenced. Check the return value against NULL
to avoid potential NULL dereference.

Signed-off-by: Pan Bian <bianpan2016@163.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
libavformat/rtpenc_mpegts.c

index 7af02e0..5f81e1a 100644 (file)
@@ -85,6 +85,10 @@ static int rtp_mpegts_write_header(AVFormatContext *s)
     }
     rtp_ctx->oformat = rtp_format;
     st = avformat_new_stream(rtp_ctx, NULL);
+    if (!st) {
+        ret = AVERROR(ENOMEM);
+        goto fail;
+    }
     st->time_base.num   = 1;
     st->time_base.den   = 90000;
     st->codecpar->codec_id = AV_CODEC_ID_MPEG2TS;