From patchwork Sun Jul 7 18:47:28 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michael Niedermayer X-Patchwork-Id: 50393 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a59:cc64:0:b0:482:c625:d099 with SMTP id k4csp5406089vqv; Sun, 7 Jul 2024 11:48:25 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCWNQ5cqTS/ICURdoZPwtfz211n9Z+2Vo4XUkO7JsihwLo3V03xXle3UpfD6IX6DF+iOC8vuTsbU16qZ+0j2Y5E6Vz3lgy0J20732g== X-Google-Smtp-Source: AGHT+IETWkOO4ViFDtxiQW/q/nKiQiX9cRVp4pUsoAmGF1+U9XD5ry7zY8jCrGNVNFzF1SosuMMp X-Received: by 2002:a05:6402:3496:b0:57c:61a3:546 with SMTP id 4fb4d7f45d1cf-58e5b1b752dmr7373421a12.21.1720378104710; Sun, 07 Jul 2024 11:48:24 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1720378104; cv=none; d=google.com; s=arc-20160816; b=vTQswF2QJirJNx19BOvEOAsEHqPgVm0+iUs1KzAib+fBUoFBPbWM74DngT3jUag1CB IrXDJvUNvp9hckKLmgX7fCdCTPm8pHINoBlAcOb4KwjDv+UOt2j1g1RJuXzLVbKC9ZG3 k9XsbiHmdNFZSm/DUIPPYfUBKba2wpffX7J8bWC+Uu4/QfLfkMnuONa1yvuFesrqa6VO YTjKVH5UQp/SrylBXKU5EFh/1mqois+YCZ3pfhw8S4dw124UMKsJLE192guW2pqqWppZ DqrZPrGJ1BjrBBlMbtUuHIFhGb1n9gRkMmdkT8xWCJWqCGAj8s/QGLI6kU5cmj0fKKSE MCLg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:reply-to:list-subscribe :list-help:list-post:list-archive:list-unsubscribe:list-id :precedence:subject:mime-version:references:in-reply-to:message-id :date:to:from:dkim-signature:delivered-to; bh=grrq3CG8ylZI8FN8L/cXHte15qU7XeWwAmVkmfMRjFs=; fh=e5zN9xSzcxLA6bGo3lF+CqTbY/oLwzApV03EO/RBfgQ=; b=wVeQ6SB/rq+OlcPKm8vOIhxOYx2mlShQUFRe6UeRnNFOwz6y+0Ry3SFbBW977iyB4z os4q18EOxVANKOt95LZnE04P3vltIivfbx51gjQRgIWtdXAyxMzbLk6VLfNvvqlKTM6k 0I0eNMB5JCLH89+DtgueejqHUTEPEdJPyEmijx5tB0gpmvHNRdW62p7zCV7luG0ZZXqY Xs7jRsCm/ZOp5a0OEFZ19QvQ7m3ZgZbGWi/tr+vN0b9E9iJEYw9lqWlckQMLaO4o0QJK vn+87HbCxSGhmqHR5a0x920p0VssVZnzVJr2Biz74cNDpA0ssqXf27ed+EF+piutpBZJ NdCA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@niedermayer.cc header.s=gm1 header.b=N68RAI+s; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id 4fb4d7f45d1cf-58d734564fcsi4782288a12.494.2024.07.07.11.48.22; Sun, 07 Jul 2024 11:48:24 -0700 (PDT) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@niedermayer.cc header.s=gm1 header.b=N68RAI+s; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 697DE68DBEC; Sun, 7 Jul 2024 21:47:43 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from relay4-d.mail.gandi.net (relay4-d.mail.gandi.net [217.70.183.196]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 45A2768D933 for ; Sun, 7 Jul 2024 21:47:34 +0300 (EEST) Received: by mail.gandi.net (Postfix) with ESMTPSA id A58FAE0005 for ; Sun, 7 Jul 2024 18:47:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=niedermayer.cc; s=gm1; t=1720378053; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=9xVNEn0+6qM2x9UXwoA/crPhSFQFDdlNTrvy5f15Op4=; b=N68RAI+s1rYdapY356fyGu7jwtuR+z2psvOXAvg0bHlJNjgseziv6ssGO7QFQPBSaAmiuz +2/KlZTvT4XYVkYtNMBKEgDPMDP5+QzTV8C+F9FRI/1YjMDfscdukrP+hLrk3A0/UsZINp 1WAoaGn1+Q06tsExFr9Kw+NPrqzmGAT+oKaRPkFAwJLQWcUCYvT7A2mf4bXhk5d0xF5O6O qQM896DwaVc9aqdnSH+euLjaW91MynbIi07LTd+3zLWozfFPUoLGOlXdo3gO0CUWILRdpC 5L0rUSlUe/WVExi/mn8pSenjFIv+1Q8wjrvsx/HKAB+bqx9PLdKXLOi85jXnAg== From: Michael Niedermayer To: FFmpeg development discussions and patches Date: Sun, 7 Jul 2024 20:47:28 +0200 Message-ID: <20240707184729.3525852-5-michael@niedermayer.cc> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240707184729.3525852-1-michael@niedermayer.cc> References: <20240707184729.3525852-1-michael@niedermayer.cc> MIME-Version: 1.0 X-GND-Sasl: michael@niedermayer.cc Subject: [FFmpeg-devel] [PATCH 5/6] avfilter: Free out on error X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: 1IMbbyc/vVpX CID1197065 Resource leak Sponsored-by: Sovereign Tech Fund Signed-off-by: Michael Niedermayer --- libavfilter/af_aderivative.c | 1 + libavfilter/vf_deshake.c | 6 ++++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/libavfilter/af_aderivative.c b/libavfilter/af_aderivative.c index eeaa23ff88d..4883972dcf1 100644 --- a/libavfilter/af_aderivative.c +++ b/libavfilter/af_aderivative.c @@ -126,6 +126,7 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *in) s->prev = ff_get_audio_buffer(inlink, 1); if (!s->prev) { av_frame_free(&in); + av_frame_free(&out); return AVERROR(ENOMEM); } } diff --git a/libavfilter/vf_deshake.c b/libavfilter/vf_deshake.c index 107b78a7d1c..05a2df652ee 100644 --- a/libavfilter/vf_deshake.c +++ b/libavfilter/vf_deshake.c @@ -478,8 +478,10 @@ static int filter_frame(AVFilterLink *link, AVFrame *in) aligned = !((intptr_t)in->data[0] & 15 | in->linesize[0] & 15); deshake->sad = av_pixelutils_get_sad_fn(4, 4, aligned, deshake); // 16x16, 2nd source unaligned - if (!deshake->sad) - return AVERROR(EINVAL); + if (!deshake->sad) { + ret = AVERROR(EINVAL); + goto fail; + } if (deshake->cx < 0 || deshake->cy < 0 || deshake->cw < 0 || deshake->ch < 0) { // Find the most likely global motion for the current frame