From 12cdb30e37af8beb536f49b76bafd5fedb5b850c Mon Sep 17 00:00:00 2001 From: Zhao Zhili Date: Sat, 24 Aug 2024 01:09:56 +0800 Subject: [PATCH] avcodec/videotoolboxenc: Fix leaking of supported_props There are two VTCompressionSessionRef been created, one for generating extradata, and another for normal encoding. supported_props was been overwritten without release. Signed-off-by: Zhao Zhili --- libavcodec/videotoolboxenc.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/libavcodec/videotoolboxenc.c b/libavcodec/videotoolboxenc.c index 78ef474d7a..f4070571d3 100644 --- a/libavcodec/videotoolboxenc.c +++ b/libavcodec/videotoolboxenc.c @@ -1205,6 +1205,10 @@ static int vtenc_create_encoder(AVCodecContext *avctx, #if defined (MAC_OS_X_VERSION_10_13) && (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_13) if (__builtin_available(macOS 10.13, *)) { + if (vtctx->supported_props) { + CFRelease(vtctx->supported_props); + vtctx->supported_props = NULL; + } status = VTCopySupportedPropertyDictionaryForEncoder(avctx->width, avctx->height, codec_type,