From 76e0ecec0bfade85796ccfeb9ffdfd55c666612e Mon Sep 17 00:00:00 2001 From: Andreas Rheinhardt Date: Sat, 30 Nov 2019 07:38:10 +0100 Subject: [PATCH] avcodec/extract_extradata_bsf: Don't unref uninitialized buffers This happens if allocating extradata fails and s->remove is unset. Reviewed-by: Paul B Mahol Signed-off-by: Andreas Rheinhardt Signed-off-by: James Almer --- libavcodec/extract_extradata_bsf.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavcodec/extract_extradata_bsf.c b/libavcodec/extract_extradata_bsf.c index ff111de48c..15ffed6ba0 100644 --- a/libavcodec/extract_extradata_bsf.c +++ b/libavcodec/extract_extradata_bsf.c @@ -85,7 +85,7 @@ static int extract_extradata_av1(AVBSFContext *ctx, AVPacket *pkt, } if (extradata_size && has_seq) { - AVBufferRef *filtered_buf; + AVBufferRef *filtered_buf = NULL; uint8_t *extradata, *filtered_data; if (s->remove) { @@ -179,7 +179,7 @@ static int extract_extradata_h2645(AVBSFContext *ctx, AVPacket *pkt, if (extradata_size && ((ctx->par_in->codec_id == AV_CODEC_ID_HEVC && has_sps && has_vps) || (ctx->par_in->codec_id == AV_CODEC_ID_H264 && has_sps))) { - AVBufferRef *filtered_buf; + AVBufferRef *filtered_buf = NULL; uint8_t *extradata, *filtered_data; if (s->remove) {