summaryrefslogtreecommitdiffstats
path: root/libavformat/isom.c
diff options
context:
space:
mode:
authorJames Almer <jamrial@gmail.com>2018-03-06 23:26:22 -0300
committerJames Almer <jamrial@gmail.com>2018-03-06 23:41:32 -0300
commita43e9cdd442b3ccf50faa32a15b03bdaff278017 (patch)
treefd3503499a81b7cb634787705aca337046cea004 /libavformat/isom.c
parent8b0a9f79c8973283e7dc21609bb3848a21427906 (diff)
downloadffmpeg-streaming-a43e9cdd442b3ccf50faa32a15b03bdaff278017.zip
ffmpeg-streaming-a43e9cdd442b3ccf50faa32a15b03bdaff278017.tar.gz
avformat/isom: don't free extradata before calling ff_get_extradata()
ff_get_extradata() frees any existing extradata before allocating now, and using av_free() here leaves a dangling pointer that will result in a double free. Fixes a regression since 0ca33b1d4eb2a2a2e78ff3a37f1647917635b0d2. Tested-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: James Almer <jamrial@gmail.com>
Diffstat (limited to 'libavformat/isom.c')
-rw-r--r--libavformat/isom.c1
1 files changed, 0 insertions, 1 deletions
diff --git a/libavformat/isom.c b/libavformat/isom.c
index 59502a8..2792371 100644
--- a/libavformat/isom.c
+++ b/libavformat/isom.c
@@ -526,7 +526,6 @@ FF_ENABLE_DEPRECATION_WARNINGS
av_log(fc, AV_LOG_TRACE, "Specific MPEG-4 header len=%d\n", len);
if (!len || (uint64_t)len > (1<<30))
return AVERROR_INVALIDDATA;
- av_free(st->codecpar->extradata);
if ((ret = ff_get_extradata(fc, st->codecpar, pb, len)) < 0)
return ret;
if (st->codecpar->codec_id == AV_CODEC_ID_AAC) {
OpenPOWER on IntegriCloud