From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.ffmpeg.org (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id 3FD834BD74 for ; Wed, 27 Aug 2025 12:11:16 +0000 (UTC) Authentication-Results: ffbox; dkim=fail (body hash mismatch (got b'i3Nvq/G5QjDRvRf9fFU2r2xvvDyaTTG9eFBtMx6flcM=', expected b'NMkU3zu8yQcfvdBccEgbkRiQ4XyPDVnkrrbkpW56W7M=')) header.d=ffmpeg.org header.i=@ffmpeg.org header.a=rsa-sha256 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ffmpeg.org; i=@ffmpeg.org; q=dns/txt; s=mail; t=1756296671; h=mime-version : to : message-id : reply-to : subject : list-id : list-archive : list-archive : list-help : list-owner : list-post : list-subscribe : list-unsubscribe : from : cc : content-type : content-transfer-encoding : from; bh=i3Nvq/G5QjDRvRf9fFU2r2xvvDyaTTG9eFBtMx6flcM=; b=TgUv0BHJG0rbCYmm+8jGIx1+CEki6raMmxdbDLBaVEXJ+JUxV9d5KP4NRSwl714O0awlT CXrO+S6uiavXY+j3BB9MxOUz61FyiF9y1vqffTnlsQkCGBb6eNqu778KqOt056IJUQiWyDR UVNcA1bra5yjnNSjMStO8/E2jS18J++94vAh9loAzk+7uG8kTJtZRKf53Kzzo7CBOEOojAA ZmyoMbriEOUpQrkUpNMbilLCD0n/FkjEWKGoip2pNkdWRz4y5ZWud6IJnkWbD8fPqQFp53K O2ZTKCoS09pWrouu2sMYl2TvzQnHBwf1xBAqnMF48FMSU27NLmmOoYH8uHag== Received: from [172.18.0.4] (unknown [172.19.0.4]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTP id 94F7568E7B6; Wed, 27 Aug 2025 15:11:11 +0300 (EEST) ARC-Seal: i=1; cv=none; a=rsa-sha256; d=ffmpeg.org; s=arc; t=1756296661; b=TLYFUTU5zMfUYJazUFQiDUhSUUpJT50S5rd3nSLMU4LK4NfCFsGtPacL+a3XK2eKvallz UnL4oPx3HPESGs4p2OANUWamG8mhBYETceBvhLOh0AZxUTcavO5PhT3W6+Ud6u/xZ35SmXs owGKO2ZDRXD5pSFMncMzIS9n+aQce9o2BbWmzNFG3Y3YCqk+MQOeT7K0fyjg4u4s5P8Ysoe XqTlp+sxH9okZeX9tiCUbktxcZd1sOdq0peg/oBfbThEG0gh6oxGC2ApGWvbm5dl8FSishh vMbYE37Ju0e5odMklBM49OJgjLNKC07O75CwR/xoF5yGPhKKFpWYtSY6lA6Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=ffmpeg.org; s=arc; t=1756296661; h=from : sender : reply-to : subject : date : message-id : to : cc : mime-version : content-type : content-transfer-encoding : content-id : content-description : resent-date : resent-from : resent-sender : resent-to : resent-cc : resent-message-id : in-reply-to : references : list-id : list-help : list-unsubscribe : list-subscribe : list-post : list-owner : list-archive; bh=dAncFr8V7LwdtpcowWtxZdv/FWeeuuIGj34sxi9YQDs=; b=F8147Xz5C8mTsL+nn7O3E9OkFDvfhHzjktDTJjI/ql1IUeJqkRapS1jnLzv8lPZJBxNwy VhjzMFuud65rEyXjf6L3nM1or49UaaMP7N25VTiXfp5SU36UFHGqJdR3gQp7FqrgcADEetA 8bPJtHK9ZenR7vYUL5LE8LWrSH75z5quv4JCEtMWpK9H5aMIN4OndgDJ5JupLuBIVVCj5cH 7I4DtiDhhBnmwnOKhgVlbC8rfY6GRR8Z2zVNh2JAHsg2osCxvWGB7taDxr8iuBK8tnYMkX6 G1TCruNqsScSDUwI6B1H8MmYMnwxENNqDnsPOaskVpaVpEWY2elCd7ByK6AA== ARC-Authentication-Results: i=1; ffmpeg.org; dkim=pass header.d=ffmpeg.org header.i=@ffmpeg.org; arc=none; dmarc=none Authentication-Results: ffmpeg.org; dkim=pass header.d=ffmpeg.org header.i=@ffmpeg.org; arc=none (Message is not ARC signed); dmarc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ffmpeg.org; i=@ffmpeg.org; q=dns/txt; s=mail; t=1756296653; h=content-type : mime-version : content-transfer-encoding : from : to : reply-to : subject : from; bh=NMkU3zu8yQcfvdBccEgbkRiQ4XyPDVnkrrbkpW56W7M=; b=W0mOeQKU/WpmN6+0n66TcZQm6FJs/bCl0PGkDNR+uzIavatv5SLPZYx3p7srJmlabFc95 H+kWnQQ1W5C8lzo+Ec7UwJlMhLNTGfISMNbkDRTZA7Kx7xKFXVxCm2BTAVQTq9pWyT1rt3m kK3efDCawIRmQA1L5hqejvhIAkHTEOULDEgk+d6QOxZ0g9PlyXu6IGs63A1MH+7Grpwt1mu S3hns1WjMdDZBYM4ec1DWHjMazL1zDZ8Kg1UCtyMCW3lEJZNK/F9DT5+MoSXUPJa4yhkVj7 bD0T6e84xeNJYLk+KafR805KAHg/ZPccYvZb2lj8o2fOqqYyMYp9Rec/NOfQ== Received: from 5d8f51c41678 (code.ffmpeg.org [188.245.149.3]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTPS id 738ED68E759 for ; Wed, 27 Aug 2025 15:10:53 +0300 (EEST) MIME-Version: 1.0 To: ffmpeg-devel@ffmpeg.org Message-ID: <175629665363.34.6058604134571774466@5a0384606a8e> Message-ID-Hash: OMCZJNX2FSBDGGXEUH5TPECQ2LHC2POX X-Message-ID-Hash: OMCZJNX2FSBDGGXEUH5TPECQ2LHC2POX X-MailFrom: code@ffmpeg.org X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; header-match-ffmpeg-devel.ffmpeg.org-0; header-match-ffmpeg-devel.ffmpeg.org-1; header-match-ffmpeg-devel.ffmpeg.org-2; header-match-ffmpeg-devel.ffmpeg.org-3; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.10 Precedence: list Reply-To: FFmpeg development discussions and patches Subject: [FFmpeg-devel] [PATCH] libjxldec/libjxlenc: fix leaks (PR #20352) List-Id: FFmpeg development discussions and patches Archived-At: Archived-At: List-Archive: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: From: Leo Izen via ffmpeg-devel Cc: Leo Izen Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Archived-At: List-Archive: List-Post: PR #20352 opened by Leo Izen (Traneptora) URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/20352 Patch URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/20352.patch Fix leaks. We forgot to free these. >>From a8d6b87a4442c690587db6f44cc7ed72a2de81fc Mon Sep 17 00:00:00 2001 From: Leo Izen Date: Wed, 27 Aug 2025 05:26:03 -0400 Subject: [PATCH 1/2] avcodec/libjxldec: fix leaked EXIF ifd We're missing a call to av_exif_free here. We leak the internal heap- allocated objects when &ifd goes out of scope. Signed-off-by: Leo Izen --- libavcodec/libjxldec.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libavcodec/libjxldec.c b/libavcodec/libjxldec.c index 31f4592d1c..8ce69015bf 100644 --- a/libavcodec/libjxldec.c +++ b/libavcodec/libjxldec.c @@ -519,6 +519,7 @@ static int libjxl_receive_frame(AVCodecContext *avctx, AVFrame *frame) ret = ff_decode_exif_attach_ifd(avctx, ctx->frame, &ifd); if (ret < 0) av_log(avctx, AV_LOG_ERROR, "Unable to attach EXIF ifd\n"); + av_exif_free(&ifd); } if (ctx->basic_info.have_animation) { ctx->frame->pts = av_rescale_q(ctx->accumulated_pts, ctx->anim_timebase, avctx->pkt_timebase); -- 2.49.1 >>From 041651841a1e11a6873a1d7b2f826b8678f8a2c8 Mon Sep 17 00:00:00 2001 From: Leo Izen Date: Wed, 27 Aug 2025 05:28:31 -0400 Subject: [PATCH 2/2] avcodec/libjxlenc: fix leaked EXIF ifd We're missing a call to av_exif_free here. We leak the internal heap- allocated objects when &ifd goes out of scope. Signed-off-by: Leo Izen --- libavcodec/libjxlenc.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libavcodec/libjxlenc.c b/libavcodec/libjxlenc.c index 4f05f015e2..81c8233e40 100644 --- a/libavcodec/libjxlenc.c +++ b/libavcodec/libjxlenc.c @@ -394,6 +394,7 @@ static int libjxl_preprocess_stream(AVCodecContext *avctx, const AVFrame *frame, ret = av_exif_write(avctx, &ifd, &exif_buffer, AV_EXIF_TIFF_HEADER); if (ret < 0) av_log(avctx, AV_LOG_WARNING, "unable to process EXIF frame data\n"); + av_exif_free(&ifd); } else { sd = av_frame_get_side_data(frame, AV_FRAME_DATA_DISPLAYMATRIX); if (sd) -- 2.49.1 _______________________________________________ ffmpeg-devel mailing list -- ffmpeg-devel@ffmpeg.org To unsubscribe send an email to ffmpeg-devel-leave@ffmpeg.org