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 8B8CF4C9AC for ; Fri, 8 Aug 2025 00:17:56 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTP id 8552368C7C7; Fri, 8 Aug 2025 03:17:52 +0300 (EEST) Received: from mail-yb1-f173.google.com (mail-yb1-f173.google.com [209.85.219.173]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTPS id 2DF63687BA3 for ; Fri, 8 Aug 2025 03:17:46 +0300 (EEST) Received: by mail-yb1-f173.google.com with SMTP id 3f1490d57ef6-e8d96ff2dfaso1479738276.2 for ; Thu, 07 Aug 2025 17:17:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1754612264; x=1755217064; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=y2768cHG9OXOEOG22GidLfm/G0NXwTa5chZWypZ3SLU=; b=VX8O1fUBbTI7lWFqO5GTWf3dcHwjF+tZYilUQt7rox6CAu2fLCQNRS4Wie3OTEIY44 C6E3JXiMCGMPnAJXKjn+wKE0R8kc1WfHg6/0vjedM2uieqTN72qwb6kWFXNysD6VLRSU epYl332axZsr4cNCZLoJ6lLediHXoMopj4ZD1OnEkKnKEXeU89d42sYk6QNuw4CHC45f tyiBTFtsOwHYrS76x8ghfxIgjtb3+7122/s/CyyUNCLvyVj9ESGzlinvPZ5nHLeT9w8p ciRxU3i/1g+fUxF3pqAutMvvyyk6wOYgXaRbLg+7g4Ce2KBGB/yw4gvpqukvlee5hL7b AoJw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1754612264; x=1755217064; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=y2768cHG9OXOEOG22GidLfm/G0NXwTa5chZWypZ3SLU=; b=cg3KYhOgGVa01sqs5p6z2tZGGxIy0bFFJnfx0lpZ7T/3EZ7bjHuWLBsW6+iqd6DgFO 9AI9tCr9r5UxkUiaGUBNR8wHUfIqGyO/yzQWUJ1kJU/QpfaJW30zg3twjJQAd6lQ064Z R2gYFqqIpe7gUm0qwMnzJlgOmNYb3b+T1tDHpFMXfbDcaraQEvO8z+cvOlajHoSMG/lF E9FBF+6/3xjMPWyAk4SkljF9IkreeSafzTMIW4/tFN+gabm0fd6RIAUXlmsMtUin6G0e EW6kQbMNzPYpv4pBfhkSDHNogBU2XbZolbRaHRjGqv/Ya+UxsArjVP/8PQKc5+CxfgbQ ljCA== X-Gm-Message-State: AOJu0Yx4/jBM0ZSH2aMU9yh9kQKwVs3SyC6sP6g9XKSo1PEbrteJKcGr lsOMckCTfivnN6MKc5u8T8gAXMsedYeyCRRyt88PEWU4ONMQOxficPLWpE7hMw== X-Gm-Gg: ASbGncvgqfbu5OlpV++mbZgsRaFUsMMdO/lo9e+2sOdNtwccgVHe1ng8hgCYycgfAfB h31AvMwDeOyMBxTBC5t/y6yzKmO46oM5KssbK2GezIaysz9oS3mx9JtZ1POuzcVYl7tIVxjd/2p LnlzM0ENI+qN7NJ1dmEMWOakO5iPMqYVkm8gp7etrgooBV6ut5TUC2y07Pc+nV69nKxJNpAtkRe aFlDXa1oIuFrzXSthmUIRgXal+dSTYMMP5IfB7o5CfOJRR+LBUlPO86Vf7VA59wyqcL0pymsDCG iPUyewHgyW7CEjnOk5zVQRHUbv4HZb/3IX/mPGOt19jmneAoL1ZJN3Icv2eI2sHLCyzpyeQZgHM y7deKOkXF7ZPQE4MHmkeR7JtgKYe8H30Agvl+eYzD3aDAj6F0UMaMItk= X-Google-Smtp-Source: AGHT+IHUh6WXge+2kJROLX99fJfy6AfuHIBkIp/TW/kK8M6aG21Fe5O0Ms9yvJrjLc5MaXkzJ9AcSg== X-Received: by 2002:a05:690c:4904:b0:71a:41e2:b553 with SMTP id 00721157ae682-71bf0e612b0mr13598747b3.26.1754612263827; Thu, 07 Aug 2025 17:17:43 -0700 (PDT) Received: from newman.cs.purdue.edu ([128.10.127.250]) by smtp.gmail.com with ESMTPSA id 00721157ae682-71b83fd71afsm36572757b3.19.2025.08.07.17.17.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 07 Aug 2025 17:17:43 -0700 (PDT) From: Jiasheng Jiang To: ffmpeg-devel@ffmpeg.org Date: Fri, 8 Aug 2025 00:17:41 +0000 Message-Id: <20250808001741.23533-1-jiashengjiangcool@gmail.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Subject: Re: [FFmpeg-devel] [PATCH] libavformat/whip: Add av_freep() to avoid potential memory leak 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: Jiasheng Jiang 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: Nicolas George (HE12025-08-07) > Jiasheng Jiang (HE12025-08-07): >> Add av_freep() if avio_alloc_context() fails to avoid potential memory leak. >> >> Fixes: 167e343bbe ("avformat/whip: Add WHIP muxer support for subsecond latency streaming") >> Signed-off-by: Jiasheng Jiang >> --- >> libavformat/whip.c | 1 + >> 1 file changed, 1 insertion(+) >> >> diff --git a/libavformat/whip.c b/libavformat/whip.c >> index 256ea14d2c..82a5a51029 100644 >> --- a/libavformat/whip.c >> +++ b/libavformat/whip.c >> @@ -1553,6 +1553,7 @@ static int create_rtp_muxer(AVFormatContext *s) >> >> rtp_ctx->pb = avio_alloc_context(buffer, buffer_size, 1, s, NULL, on_rtp_write_packet, NULL); >> if (!rtp_ctx->pb) { > >> + av_freep(&buffer); >> ret = AVERROR(ENOMEM); >> goto end; > > That belong to after end, otherwise you need to make the change > everywhere. > >> } > > Regards, I found that after the success of avio_alloc_context(), buffer is assigned to rtp_ctx->pb->buffer and will be freed in whip_deinit(). Therefore, I think moving av_freep() after end would cause a double free. - Jiasheng _______________________________________________ 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".