From ef73ccc2c419a326ca87ef6573abe70a32e616c1 Mon Sep 17 00:00:00 2001 From: Paul B Mahol Date: Wed, 7 Aug 2019 18:49:08 +0200 Subject: [PATCH] avcodec/h264_refs: do not use invalid mmco values in case of error Change one relevant assert to av_assert0 while here. --- libavcodec/h264_refs.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libavcodec/h264_refs.c b/libavcodec/h264_refs.c index 74087ff266..dae8bd278a 100644 --- a/libavcodec/h264_refs.c +++ b/libavcodec/h264_refs.c @@ -732,7 +732,7 @@ int ff_h264_execute_ref_pic_marking(H264Context *h) for (j = 0; j < MAX_DELAYED_PIC_COUNT; j++) h->last_pocs[j] = INT_MIN; break; - default: assert(0); + default: av_assert0(0); } } @@ -868,6 +868,7 @@ int ff_h264_decode_ref_pic_marking(H264SliceContext *sl, GetBitContext *gb, av_log(logctx, AV_LOG_ERROR, "illegal long ref in memory management control " "operation %d\n", opcode); + sl->nb_mmco = i; return -1; } mmco[i].long_arg = long_arg; @@ -877,6 +878,7 @@ int ff_h264_decode_ref_pic_marking(H264SliceContext *sl, GetBitContext *gb, av_log(logctx, AV_LOG_ERROR, "illegal memory management control operation %d\n", opcode); + sl->nb_mmco = i; return -1; } if (opcode == MMCO_END)