ffserver: allocate AVStream's internal too
authorReynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
Mon, 14 Dec 2015 17:49:08 +0000 (09:49 -0800)
committerReynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
Tue, 15 Dec 2015 18:04:49 +0000 (10:04 -0800)
Avoids segfault at init_muxer() (mux.c) due to a
null pointer dereference on the recently
introduced AVStream->internal

Fixes: #5059 (https://trac.ffmpeg.org/ticket/5059)

Signed-off-by: Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
ffserver.c

index 029771c..4392a62 100644 (file)
@@ -3423,6 +3423,7 @@ static int rtp_new_av_stream(HTTPContext *c,
 /********************************************************************/
 /* ffserver initialization */
 
+/* FIXME: This code should use avformat_new_stream() */
 static AVStream *add_av_stream1(FFServerStream *stream,
                                 AVCodecContext *codec, int copy)
 {
@@ -3448,6 +3449,7 @@ static AVStream *add_av_stream1(FFServerStream *stream,
         fst->codec = codec;
 
     fst->priv_data = av_mallocz(sizeof(FeedData));
+    fst->internal = av_mallocz(sizeof(*fst->internal));
     fst->index = stream->nb_streams;
     avpriv_set_pts_info(fst, 33, 1, 90000);
     fst->sample_aspect_ratio = codec->sample_aspect_ratio;