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 8B69341332 for ; Mon, 27 Jun 2022 09:57:52 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 2113A68B864; Mon, 27 Jun 2022 12:57:50 +0300 (EEST) Received: from out162-62-57-252.mail.qq.com (out162-62-57-252.mail.qq.com [162.62.57.252]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E632268B757 for ; Mon, 27 Jun 2022 12:57:42 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foxmail.com; s=s201512; t=1656323859; bh=AwbCdZ5mMYAj2UQHbxUhTTg7bQmQwJfWFrnkiCQZtKM=; h=From:To:Cc:Subject:Date; b=a2qxGZpPmdPHPINLEv5MB30qAYfqMUhQvEdtSbKYhYr2Cav4bsyxrIk6riSi9048Q 7V+bz7Bf77lIBhN53c3h37bRkwPfh+JwnOKC9mnrNBTetCLzxU3pwKe0IxeFeWJncD wkWFXLWblp5mLXeixjGuBSozTcy1TMn5f2zIUQrw= Received: from ZHILIZHAO-MB2.tencent.com ([59.37.125.120]) by newxmesmtplogicsvrsza30.qq.com (NewEsmtp) with SMTP id E652D26D; Mon, 27 Jun 2022 17:57:37 +0800 X-QQ-mid: xmsmtpt1656323857th0m20ib6 Message-ID: X-QQ-XMAILINFO: MaZu5Xhaz90xMU8voTpp+yrDj7VlD6bfpMGDGD9nAYE6Qwyecx0RALlC7jB3dJ q5JUqIlpO3FTd3tmXTWTWOo0pvhwRYPyPKn0Kwhy50z3z2X3hCPumKbVUYCZCKG5fKkg2xqPADo2 +gEFqKW97keTdGeXxDpYb2PsJ9nJAGll6Oy9YoItJpgIxKvC1IE8oT88lhxen3w4MJYQLAD8SdUA lbXB0rChlUSx7FPKfJm3gZZvozr4W7cWGumKvUGAu0F0Lc88P2ACBCx3LTjNb8dWa8rGBQCed3oR nFvf9yE0Uxj9CaOHpnJ7NU8e00uMxab0pSJ75PZZ3vDU228QjPRx1qr7H+/OKdFflDlBd+1z/yb2 YCv466YDaVFCNlUQfCZdvP7GlZNUFkpAh/twoFJbgnVNUDnH5O85XuhtnK+NHgeI+od0HWAwSopJ UfZ5mDWHgATGOg+xX6ChK+asSw/WRh1j9N95YgA66Di08gxAlo7bWKdv5UIl+OyIYZeg9T5kXmUJ G3kTOhJnWxDgvdtndyQ93jb1I4Fq/ptwewzAZa4ihzFEgxvRJKQXqQ8joK1ZWJUw9eftUiqbbt7I jSxt9ODzwUUKnpJGQ9xUFNVHv5k/SN1z8BDVJwb/0AgRGuRvOoi7imYEf/3cp5YXBmyUaHywPLPH OYKcQiemsearB526SFO1rKTN5pgMrdOU0fyrA/on29rCFv8awkwGBsVioylkZ+RhyRD+/tw/fv/g BAGDjhxuolgXKzTpXVf1qdeW7nrz7B+MlRO5pMpKY1XXsMLfNs0p/2fqngV030KeH64R59/xEL7d kPWpcrVhdfLCQ+YwAN5O8eOWxP+m/v2RaeNWBrALE+nlXyu3PlZtZJuKMlqnTZFq1YfUt3bP/wJD XKH3dWukhkttJp5qzqYXaAPoY0TFaiI+Ro/2GzsdQ3h1rDWyrt+ccIgd83frOjcaX+rCKmwDd2hz whg0lsiTgqjIWD7rGvRQ== From: Zhao Zhili To: ffmpeg-devel@ffmpeg.org Date: Mon, 27 Jun 2022 17:57:27 +0800 X-OQ-MSGID: <20220627095728.55330-1-quinkblack@foxmail.com> X-Mailer: git-send-email 2.35.3 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH] avcodec/libdavs2: workaround 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: Zhao Zhili , 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: davs2_decoder_close doesn't free those on the fly frames which don't get output yet. It's a design bug, but easy to workaround. Before the patch: Direct leak of 1198606 byte(s) in 2 object(s) allocated from: #0 0x563af5e1e5f0 in malloc (ffmpeg+0x6675f0) #1 0x563af9765ef3 in davs2_malloc davs2/source/common/common.h:1240 #2 0x563af9765ef3 in davs2_alloc_picture davs2/source/common/header.cc:815 Indirect leak of 3595818 byte(s) in 6 object(s) allocated from: #0 0x563af5e1e5f0 in malloc (ffmpeg+0x6675f0) #1 0x563af9765ef3 in davs2_malloc davs2/source/common/common.h:1240 #2 0x563af9765ef3 in davs2_alloc_picture davs2/source/common/header.cc:815 Signed-off-by: Zhao Zhili --- libavcodec/libdavs2.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libavcodec/libdavs2.c b/libavcodec/libdavs2.c index d7625718a2..c2040775ae 100644 --- a/libavcodec/libdavs2.c +++ b/libavcodec/libdavs2.c @@ -177,6 +177,7 @@ static av_cold int davs2_end(AVCodecContext *avctx) /* close the decoder */ if (cad->decoder) { + davs2_flush(avctx); davs2_decoder_close(cad->decoder); cad->decoder = NULL; } -- 2.35.3 _______________________________________________ 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".