diff --git a/ffserver.c b/ffserver.c index 79463c0e64..aebe651617 100644 --- a/ffserver.c +++ b/ffserver.c @@ -3457,6 +3457,9 @@ static AVStream *add_av_stream1(FFStream *stream, AVCodecContext *codec, int cop { AVStream *fst; + if(stream->nb_streams >= FF_ARRAY_ELEMS(stream->streams)) + return NULL; + fst = av_mallocz(sizeof(AVStream)); if (!fst) return NULL; @@ -3802,6 +3805,9 @@ static void add_codec(FFStream *stream, AVCodecContext *av) { AVStream *st; + if(stream->nb_streams >= FF_ARRAY_ELEMS(stream->streams)) + return NULL; + /* compute default parameters */ switch(av->codec_type) { case AVMEDIA_TYPE_AUDIO: