From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id EA50A49856 for ; Tue, 20 Feb 2024 12:09:48 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 9933568D18B; Tue, 20 Feb 2024 14:09:21 +0200 (EET) Received: from out162-62-58-211.mail.qq.com (out162-62-58-211.mail.qq.com [162.62.58.211]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 7A68F68D083 for ; Tue, 20 Feb 2024 14:09:12 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foxmail.com; s=s201512; t=1708430943; bh=KlOsrFXRKPTPrxe5y+KXBOc2GsNZz/bDQIef/Q+92hQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=p9bJ4AEJop4hoBb5z2kpyZMm0QPVNtxXQyhYTewJKoVqcy78bC1DB4extOhI3o9c6 +212mbNTBcSfb1dYVZ+1PlxX+mXwnKJoh4hDieMEIC98QDq5ag/IiBs3X67jJmaoR7 rBXdPbQT/nlgO6G19Fc9FXLpLFsdijYznXKZdEn8= Received: from localhost.localdomain ([113.116.31.63]) by newxmesmtplogicsvrszc5-0.qq.com (NewEsmtp) with SMTP id 2413D432; Tue, 20 Feb 2024 20:09:01 +0800 X-QQ-mid: xmsmtpt1708430943ty2yusd64 Message-ID: X-QQ-XMAILINFO: NEq0i4SycP3b87VnJiSCy3bquWA5Bz7e1uBodLMib+S+XOY0r/+6V98PTpXLj1 4Pvqbfxll0CrfFI4mrGb59cV3hW3sPFFxdc0ODvCanzyk5pKBQQ/ycn7/Eu1uS1JN3TL2GjTfMdp YpezmRlpqTKEVPUhLdVCsfeOcGsU6j3SugwfrcjVG4REbsMIE6IadE1Gq/lIPtL6zlR5bDrLNpfX L5Sx8F3EAtkYJeorVXdF5MomGYKQzg8uEy8HlWifE0EPyVgGUkNFoByRqw5Y/g1naiefuFVX+NHQ h8xovDaYe+kihx82yoKcK9AyvruKHm6Crtc4zG/QAdnOp6WdEvoUd8APZsO04k2FtrylzFx/7v1M u5xtpR0a5K40qMX4OiDLIurf25x1b8f7RuyP6WQc4Fg9H3uBPmZUYMfncvxC/dZ31TuFSjWY5luY 0KYC+daUlhaiKKfL4V9OPbbDDBC4jQvh3dYG0KPIXPvXcV3KFLz2c3OPyV9E6gUwx3VhwcirZDAt FAgB8B3EHoknwNyMui7ZyrOVWFm8bVFspFO0kRcF+GRGHfqZzeFhxyLdkOj5nGvO+u4vnFLdy0sl NQVU6rCrRJoBT+g9p8IxefYnngwlp2o4OJrx/FkYhMtYRR9TBT0cEXIOsS+vZfjP3k37BZv5eQum RE50r/lEFakGZ1DaDfZtAGArAkYvWt+XjhpMhp0yd1gmjh7WwEGZTSP9dbvaMUWP7uEpjUdlr9XR S6QDwrqu3lekevpo1F9L6znXYNBxeygaB8JIjF72w3/ombjVgEpThoqPWNLG8izJtpxqjuknEDCE cRn6WL7UDjPVQGymyXoH+eaulW9yidiOu9wjE9TWbWrP0UP+rZu6eHiq8wEb/tb2+gyq7EKhgD6k 4fOeVupNABArp7Ixd1GLbYheFBKvyfY81lGH1YWaNvsSIiT9uQqq1RzQ5zM65jTGmxT2HlTEyh2V e1xIz8bIxGVg12V8PLQTj+3ytsNka/9qqmZ7qaFEOVtON7M5EUy1q483kHbUsX6aXbfQWMnoOs6J bUfIM25w== X-QQ-XMRINFO: MPJ6Tf5t3I/ycC2BItcBVIA= From: Zhao Zhili To: ffmpeg-devel@ffmpeg.org Date: Tue, 20 Feb 2024 20:08:57 +0800 X-OQ-MSGID: <20240220120858.317766-4-quinkblack@foxmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240220120858.317766-1-quinkblack@foxmail.com> References: <20240220120858.317766-1-quinkblack@foxmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 4/5] avutil/hwcontext_vulkan: Fix leaks in map_from_drm 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 Cc: Zhao Zhili Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: From: Zhao Zhili Also simplify error handing. --- This patch is untested since I don't have a proper device. libavutil/hwcontext_vulkan.c | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/libavutil/hwcontext_vulkan.c b/libavutil/hwcontext_vulkan.c index c64094f31c..35a7d75cce 100644 --- a/libavutil/hwcontext_vulkan.c +++ b/libavutil/hwcontext_vulkan.c @@ -2633,7 +2633,8 @@ static int vulkan_map_from_drm_frame_desc(AVHWFramesContext *hwfc, AVVkFrame **f if (ret != VK_SUCCESS) { av_log(hwctx, AV_LOG_ERROR, "Failed to create semaphore: %s\n", ff_vk_ret2str(ret)); - return AVERROR_EXTERNAL; + err = AVERROR_EXTERNAL; + goto fail; } /* We'd import a semaphore onto the one we created using @@ -2752,14 +2753,7 @@ static int vulkan_map_from_drm_frame_desc(AVHWFramesContext *hwfc, AVVkFrame **f return 0; fail: - for (int i = 0; i < desc->nb_layers; i++) { - vk->DestroyImage(hwctx->act_dev, f->img[i], hwctx->alloc); - vk->DestroySemaphore(hwctx->act_dev, f->sem[i], hwctx->alloc); - } - for (int i = 0; i < desc->nb_objects; i++) - vk->FreeMemory(hwctx->act_dev, f->mem[i], hwctx->alloc); - - av_free(f); + vulkan_frame_free(hwfc, f); return err; } -- 2.34.1 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".