From 701aca55fd1186e440a5b208374d4754c9181f80 Mon Sep 17 00:00:00 2001 From: James Almer Date: Thu, 23 Aug 2018 23:50:28 -0300 Subject: [PATCH] avformat/flvdec: don't propagate empty extradata Fixes ticket #7379 Reviewed-by: Paul B Mahol Signed-off-by: James Almer --- libavformat/flvdec.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/libavformat/flvdec.c b/libavformat/flvdec.c index 93c7f85237..a2dea464e3 100644 --- a/libavformat/flvdec.c +++ b/libavformat/flvdec.c @@ -753,6 +753,9 @@ static int flv_read_close(AVFormatContext *s) static int flv_get_extradata(AVFormatContext *s, AVStream *st, int size) { + if (!size) + return 0; + av_freep(&st->codecpar->extradata); if (ff_get_extradata(s, st->codecpar, s->pb, size) < 0) return AVERROR(ENOMEM); @@ -763,6 +766,9 @@ static int flv_get_extradata(AVFormatContext *s, AVStream *st, int size) static int flv_queue_extradata(FLVContext *flv, AVIOContext *pb, int stream, int size) { + if (!size) + return 0; + av_free(flv->new_extradata[stream]); flv->new_extradata[stream] = av_mallocz(size + AV_INPUT_BUFFER_PADDING_SIZE);