From 91586539824393f8fc5ddc50d1142d8114e44684 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kacper=20Michaj=C5=82ow?= Date: Wed, 10 Jul 2024 21:27:54 +0200 Subject: [PATCH] demux_mkv: ignore duplicated BlockAdditions to avoid memory leak This can happen only on invalid files. Found by OSS-Fuzz. --- demux/demux_mkv.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/demux/demux_mkv.c b/demux/demux_mkv.c index 4a9bfb2faf..9e9b2f1c08 100644 --- a/demux/demux_mkv.c +++ b/demux/demux_mkv.c @@ -3065,7 +3065,7 @@ static int read_block_group(demuxer_t *demuxer, int64_t end, if (ebml_read_element(s, &parse_ctx, &additions, &ebml_block_additions_desc) < 0) return -1; - if (additions.n_block_more > 0) { + if (additions.n_block_more > 0 && !block->additions) { block->additions = talloc_dup(NULL, &additions); talloc_steal(block->additions, parse_ctx.talloc_ctx); parse_ctx.talloc_ctx = NULL;