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 4671D4910D for ; Wed, 3 Apr 2024 22:08:13 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 617FD68D05A; Thu, 4 Apr 2024 01:08:04 +0300 (EEST) Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04olkn2075.outbound.protection.outlook.com [40.92.74.75]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 625BE68CF50 for ; Thu, 4 Apr 2024 01:07:57 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=F78d8xDZebEjqG+0DxEIa8FwbBzunbumqUQYVhXxt7ROgRmYrOSzSPiD8esMB5H/Okd3BYLCS+Ytw+Zti1TcZ5hUA3I/Cv8T54NoBcwWbmWPjB8R0XLcgcg391uzczA7JNk2lSkkLKODRrCApaaHuXmJaFM3mscF6DLA+EKp2HtDXri3lONf0mEASqo2MIXszPfUptUGtFtRJdxeezpuBmP8hLxeZ/qtaqmxFVX5WtqYdW9f0tScfhlM7kzMrBjHLULLzjLaprP1YUYpxkxb6p5T2lhUVVpogxeyfUEkbZHFdAngvdd7NneFA7sESyTEtAUevAGi+1rNOVgYSt+dkQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=xcYk9UJRclHElNaLPW4lJyhyqE+hm2fYtiEF0KVJwCM=; b=hHWOdkVioDHIXJ0MzPIjvoo6A7hXV6659jjEyR3qWPBdlEQhyjzcLOn8Bh5bHBZYlO9ooRYHNWuvTVvMujMU+oC/mKlURU6w3wjXQ4WkovJQS6DMlVpSV9IW1Jo95hW74XPyYQyWYCG1aGC8seSx3PYXa0P3epGKZcNEFh08jY1meymXicxb4M5UemACoLqg2v3xoa/rL+iOWQb+zjM90mHKtylYC4FWiklGA4QeDRtpbsZWHbMLwaiOgyEzutwbMY43tCqHBcG8mHz+5TrVvNUJ/mcoo3RGvneWYNHdlIRVPdw60/SiWx8uiysEqZxPKmGREhsmI8nhs9hzyH9mSQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=xcYk9UJRclHElNaLPW4lJyhyqE+hm2fYtiEF0KVJwCM=; b=Z8rwxXGT5uQEhu4GUtT1GY7FmrzxToqD0hUUGGRHyY2ng++ePnqjTj++y7jxBsC6eaJ6KJI4/A5P2khUWOwHlXmKbvWPPhGfUjsfd+0QF9rmZOkGJ3RfV7yba+3UsMR8vLlXWAjPmIw8/pmE/VYi6jr8huUE88OeWOCBDdCX/KOI1Rn4JJ67heihPv8GJGLAD0lEOTtZTm77jJ3S6enr1rRDOAL8nZqM09eBrPLN7nnea4UKUybjVg3nyRKktgfXqVkS2MJ+uibrtwlf98cxOUrNaw7ryaDylj9gPebHOljffeICVHgFtqGn6MfRmpoKlnkDVN7dPDo/v5oq2kGnuQ== Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) by AS8P250MB0313.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:37c::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7409.46; Wed, 3 Apr 2024 22:07:55 +0000 Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::4a3b:cf76:cddc:c68d]) by GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::4a3b:cf76:cddc:c68d%4]) with mapi id 15.20.7409.042; Wed, 3 Apr 2024 22:07:55 +0000 Message-ID: Date: Thu, 4 Apr 2024 00:07:53 +0200 User-Agent: Mozilla Thunderbird To: ffmpeg-devel@ffmpeg.org References: Content-Language: en-US From: Andreas Rheinhardt In-Reply-To: X-TMN: [f3CerwBMtQDULunDgOCGKkp2WZF4G2n3SgO4xdMPAnM=] X-ClientProxiedBy: ZR0P278CA0192.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:44::16) To GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) X-Microsoft-Original-Message-ID: MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GV1P250MB0737:EE_|AS8P250MB0313:EE_ X-MS-Office365-Filtering-Correlation-Id: fca274ed-c8f0-452c-795f-08dc542a838d X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ceL4pGGm34m3k9tu6hHOhoRuOzrRVbNEJiUeBVabhbGk9resXwd7FFy3x75tssJj6/Qdt3BZo0/ZIgIBPW91jmdBBLUXH+x2+1Uj8yit96Da+NkjyQTmzvBi9AQNbHUh+TKfJc2TPN+mbwCbMUgtjddxMyEqwhclwfkSe2scDk7jnJXp+urUvbiRJxMxVCXEC7i1xbUyqtrrtZrLoXlT1I7OH7DtzfrRnyMJSzT56RYFV6R74UldkzMR8iX6cGE4d8tFASrWD43RZsDQfOAQ4XHVnOn5zLV1jBmo8l0Yh3okjA9K7ObKzlVyq/tas6cQykUoc350Lm2m/s1F0XovyDTq4eAdadYKoZvXDEQGUaqrCNS4eHCRNpclGH1tZQSyFH6vMNGbEV3JJGm1/shvO1L2UDU1b/jJV2O9YfEVuptoFzrY3r4JOTU69k3mJQ95CUHSzZmrmigxpsCuS8ysV6ph1slD1N1OlOfWG0CcJa6a0Vz+MjasBh4K8CC9436+p4q+32LFMmI5jhKmOBXt9i9Dbxpt46jjDKPrEEHXxE8CgjuH+pxZeclSSJcuMCKu X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?NG02WlVTejJKcG5pTkRlTjlweGlOdnBKQjl5UnNnV3JjSGlJZjk0VTlhRWZO?= =?utf-8?B?UTNoNUdSV3hpaGkwNHRmTXNEVUR2SVZpTkpCaHBpS2FMU3dPZngrUTVaTG9u?= =?utf-8?B?ZlJMOHJqc3dublM0Rkh2Z2paY0l2QUpaclFweUYvanExK3UrVmZFeVU5RUt0?= =?utf-8?B?aFNXNWswYnVISmlHTTdtOGxkWmZSelk5d1ErTm8vVG9IMngwZlptdkhNQnU2?= =?utf-8?B?UDhLclNMeU03TkROQWl5WlI1R2J1YUJrYmE0QTRPcnlOL1c2Mjg2WklhTVpa?= =?utf-8?B?OUZlTkhEcVJMOFN4b3lkdkp2OVQ4M2FaN1lXNlh5UUE5dHlHa0ZTQzJHeWZx?= =?utf-8?B?cVlHOGhweExaWUZyY3VLWU0zaDkzZy9RWmNLS3FrNlRyTVd6ZTBsU0sxeE9D?= =?utf-8?B?OGNBU3dsZk1LTnBITHpwUEgwWitMMlU0aVVTZzFzWmwrVUV6Zm41b1FGa1kw?= =?utf-8?B?Vm1kTllYWVQyS05uSEM2UGEwb0xGdDV5Z0Q1Z2liWTZsemg2L2xIWGd5Z1dw?= =?utf-8?B?Sm9maDFKS3FLcFBoeStHZDJsd1RDRHJUM0dMSlhUSU5zSGlFbW1jRU9laDB6?= =?utf-8?B?SFpjMUtMVkRValpWUTl4S0JLUmlkRUVGOGw0Q2lZaGRSNGIyTjd3a2ZuOWtU?= =?utf-8?B?SEdEa3J2eURYUGY5QXRjTnVPVGlLNFZvR2VXV0RuRmJKUS9iQXJLdVdjcW82?= =?utf-8?B?THl0MFBvdWhNcG5tVmNZeUgxbXJRWFR5SzZpOGZwcnlzZGlVUndzUVB3RVpa?= =?utf-8?B?a2pGSHFWTlZ5c0p5VFFDR2VvemZJYjJaL3JncVpHTDVWQ05IRkdQYStGZWx1?= =?utf-8?B?SzgyTlRmSTVYZnNNRitqS0Y1Zng1emE0Z3ptcTVmUkxTaUtHY1NEQ2o1MVlO?= =?utf-8?B?ZHF2ZElJdUtNNWtBbWpsMk05cm5RVlhkc2xjVUhaeGg1SDNybTkxakl5MklN?= =?utf-8?B?bDFlSk5TNExGQ21rUTJab053N0xzNzRxamRFWDBPMmlkOU1CYTU5Tk9iWVQ4?= =?utf-8?B?SzhCeHp1akMzOXZlVGtFS0gxdFdoeTlQZmhuWFAyK0t5RGh6RGtHMk9RUTZv?= =?utf-8?B?cHRCS1Y5aGliR2ZhSGZ6ODBTNEZaNHk5N3FvK2JlcTNIZHBNQUVXdW5hWHVu?= =?utf-8?B?dDlhUHgxa0FOOWFzZkhYelRYU2lXUmcvV01CQ2RVblNPSUdIT2pzRmpkQk1o?= =?utf-8?B?VGRoVTZZVTFUUXRCUmM2bjUvWjJkdEpCZkR1VVpNUGxhS0cxZktrV1hTakZC?= =?utf-8?B?VWZGbUhrTENmOXhzeWFOSTlHVlZKN0NDUlZTcTVyT1NRK2ZzTGhubndSV011?= =?utf-8?B?bEJIcEVMN0JUTlcvQ0xGOGlvSlphcThiL3BWOXprRGVFOXJ1SzRIbXltbDlY?= =?utf-8?B?d1kwNVNPV3BSWDFmL2J6ZE1xYitSTkhxaFRZSldGTGVQcWRQSEpWZUtCUlpw?= =?utf-8?B?Z2hEUXlvanR4Si9BcCtGa3NhcEoyOEc3T2dsMzQyWjY3eGJxa3U4UzdBWldj?= =?utf-8?B?UzMwaXd5cnFBZHZITWFqSE8vNlczZkNBTEo2RVZ4cnI2SitFYW1LZnV2bTBo?= =?utf-8?B?dWhKK1BtV2hNc20veWJ5V3ZTZnVsS0tCRXJucmdzTytOYlJFWFRrelNXdzNW?= =?utf-8?B?Sk01V3hIaUs1bHg4VjNsSFdrQTFqTndPNkQ1b3JnNStVUHN5RFdvcm5BcU5U?= =?utf-8?B?SEhBeWJod2w5bzE2RGhPOUpUbW9zRExtM3BwTjdKQ2J1Ymp0YXRoZURBPT0=?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: fca274ed-c8f0-452c-795f-08dc542a838d X-MS-Exchange-CrossTenant-AuthSource: GV1P250MB0737.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Apr 2024 22:07:55.4440 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8P250MB0313 Subject: Re: [FFmpeg-devel] [PATCH 1/7] avcodec/wavpack: Fix leak and segfault on reallocation 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 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: Andreas Rheinhardt: > av_realloc_f() frees the buffer it is given on allocation > failure. But in this case, the buffer is an array of > ownership pointers, causing leaks on error. Furthermore, > the count of pointers is unchanged on error and the codec's > close function uses it to free said ownership pointers, > causing a NPD. > This is a regression since 46412a8935e4632b2460988bfce4152c7dccce22. > > Fix this by switching to av_realloc_array(). > > Signed-off-by: Andreas Rheinhardt > --- > Actually, one only needs one WavpackFrameContext at a time, given > that this decoder does not do proper slice threading. > Alternatively, one could implement proper slice threading. > > libavcodec/wavpack.c | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git a/libavcodec/wavpack.c b/libavcodec/wavpack.c > index 7e60a1456a..36bd4662e8 100644 > --- a/libavcodec/wavpack.c > +++ b/libavcodec/wavpack.c > @@ -973,9 +973,11 @@ static inline int wv_unpack_mono(WavpackFrameContext *s, GetBitContext *gb, > > static av_cold int wv_alloc_frame_context(WavpackContext *c) > { > - c->fdec = av_realloc_f(c->fdec, c->fdec_num + 1, sizeof(*c->fdec)); > - if (!c->fdec) > + WavpackFrameContext **fdec = av_realloc_array(c->fdec, c->fdec_num + 1, sizeof(*c->fdec)); > + > + if (!fdec) > return -1; > + c->fdec = fdec; > > c->fdec[c->fdec_num] = av_mallocz(sizeof(**c->fdec)); > if (!c->fdec[c->fdec_num]) Will apply this patchset tomorrow unless there are objections. - Andreas _______________________________________________ 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".