From 46a9be01b8c200636fb3ebbe43f209ae27b26dbc Mon Sep 17 00:00:00 2001 From: James Almer Date: Thu, 15 Jun 2023 10:39:44 -0300 Subject: [PATCH] avcodec/evc_parse: free pps struct on parsing failure Prevents future checks for their presence from succeeding. Signed-off-by: James Almer --- libavcodec/evc_parse.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libavcodec/evc_parse.c b/libavcodec/evc_parse.c index 095598e940..1d8757b231 100644 --- a/libavcodec/evc_parse.c +++ b/libavcodec/evc_parse.c @@ -367,8 +367,10 @@ EVCParserPPS *ff_evc_parse_pps(EVCParserContext *ctx, const uint8_t *bs, int bs_ pps->pps_pic_parameter_set_id = pps_pic_parameter_set_id; pps->pps_seq_parameter_set_id = get_ue_golomb(&gb); - if (pps->pps_seq_parameter_set_id >= EVC_MAX_SPS_COUNT) + if (pps->pps_seq_parameter_set_id >= EVC_MAX_SPS_COUNT) { + av_freep(&ctx->pps[pps_pic_parameter_set_id]); return NULL; + } pps->num_ref_idx_default_active_minus1[0] = get_ue_golomb(&gb); pps->num_ref_idx_default_active_minus1[1] = get_ue_golomb(&gb);