[FFmpeg-devel] libavformat/rtpenc_mpegts: check avformat_new_stream() return value

Pan Bian bianpan2016 at 163.com
Mon Nov 27 03:30:53 EET 2017


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 at 163.com>
---
 libavformat/rtpenc_mpegts.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/libavformat/rtpenc_mpegts.c b/libavformat/rtpenc_mpegts.c
index 7af02e0..9089d61 100644
--- a/libavformat/rtpenc_mpegts.c
+++ b/libavformat/rtpenc_mpegts.c
@@ -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;
-- 
1.9.1




More information about the ffmpeg-devel mailing list