From 36bd91e6fbdd5609dc6995fa8bc1e5b38eb5fc1a Mon Sep 17 00:00:00 2001 From: Andreas Rheinhardt <andreas.rheinhardt@outlook.com> Date: Tue, 15 Apr 2025 02:11:57 +0200 Subject: [PATCH 09/12] fftools/textformat/avtextformat: Fix segfault upon allocation error Would happen if an AVTextFormatContext's private context could not be allocated. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com> --- fftools/textformat/avtextformat.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/fftools/textformat/avtextformat.c b/fftools/textformat/avtextformat.c index 7edf7901e4..5e225825ba 100644 --- a/fftools/textformat/avtextformat.c +++ b/fftools/textformat/avtextformat.c @@ -112,12 +112,14 @@ int avtext_context_close(AVTextFormatContext **ptctx) av_hash_freep(&tctx->hash); - if (tctx->formatter->uninit) - tctx->formatter->uninit(tctx); + if (tctx->formatter) { + if (tctx->formatter->uninit) + tctx->formatter->uninit(tctx); + if (tctx->formatter->priv_class) + av_opt_free(tctx->priv); + } for (i = 0; i < SECTION_MAX_NB_LEVELS; i++) av_bprint_finalize(&tctx->section_pbuf[i], NULL); - if (tctx->formatter->priv_class) - av_opt_free(tctx->priv); av_freep(&tctx->priv); av_opt_free(tctx); av_freep(ptctx); -- 2.45.2