diff options
author | Andreas Rheinhardt <andreas.rheinhardt@outlook.com> | 2023-09-21 19:17:54 +0200 |
---|---|---|
committer | Andreas Rheinhardt <andreas.rheinhardt@outlook.com> | 2023-09-26 20:41:55 +0200 |
commit | 378f1b6a393e7bf0ceb50a9454e3664a599d84d1 (patch) | |
tree | af293ed8b9a05f802541809ddee7c80155e580a5 | |
parent | e1530a319ab5e9dfa6715391824d203914323ed5 (diff) |
avcodec/evc_ps: Fix leak on error
Regression since 4565747056a11356210ed8edcecb920105e40b60.
Fixes Coverity ticket #1545072.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
-rw-r--r-- | libavcodec/evc_ps.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/libavcodec/evc_ps.c b/libavcodec/evc_ps.c index be27386292..c11b92d1c5 100644 --- a/libavcodec/evc_ps.c +++ b/libavcodec/evc_ps.c @@ -255,8 +255,10 @@ int ff_evc_parse_sps(GetBitContext *gb, EVCParamSets *ps) sps->max_num_tid0_ref_pics = get_ue_golomb_31(gb); else { sps->sps_max_dec_pic_buffering_minus1 = get_ue_golomb_long(gb); - if ((unsigned)sps->sps_max_dec_pic_buffering_minus1 > 16 - 1) - return AVERROR_INVALIDDATA; + if ((unsigned)sps->sps_max_dec_pic_buffering_minus1 > 16 - 1) { + ret = AVERROR_INVALIDDATA; + goto fail; + } sps->long_term_ref_pic_flag = get_bits1(gb); sps->rpl1_same_as_rpl0_flag = get_bits1(gb); sps->num_ref_pic_list_in_sps[0] = get_ue_golomb(gb); |