From patchwork Thu Oct 7 09:09:50 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 30958 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a6b:6506:0:0:0:0:0 with SMTP id z6csp1268511iob; Thu, 7 Oct 2021 02:10:19 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxtcpCQotde0wn+c6NT5nIMaVT/zuMymI43/W4NHpY8vzqIdyG0SNzN28kd2kUY4Yg2CByP X-Received: by 2002:a17:907:1b1b:: with SMTP id mp27mr4104941ejc.538.1633597819741; Thu, 07 Oct 2021 02:10:19 -0700 (PDT) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id j12si29035edt.33.2021.10.07.02.10.18; Thu, 07 Oct 2021 02:10:19 -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=@outlook.com header.s=selector1 header.b=YUz7OmdB; arc=fail (body hash mismatch); 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id E8A6668A1C3; Thu, 7 Oct 2021 12:10:14 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05olkn2059.outbound.protection.outlook.com [40.92.90.59]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id C1920689F4F for ; Thu, 7 Oct 2021 12:10:08 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cQ4a6bLoOzhQlb8XDJKC3qaJStBH+JJJs7p5Nlj/q5aRfp1sNnBsZh7S135RtxhmVPGz0d+OIeUutUo+tIZqZaR71HK5q46eGmk7E7Dqmx8NodUa+YRg28EKfgzBSWT7QxBdAX2xqSerMhpginv2LnroqUeUCWZIYcbwGD5i4yCuigrCb2T6HCy9GoMCXi5gyguUgOttLqAbL/n6ULPYDToyaoFbMrvFlwf+8h0SP9OcsFqNuXQ4IRk23JauNiYfuSqQJOL8JyMu6guPrNB0sHxy/JRJThcgt7UxWSIwEuuHyGDzEt2C9sqikNLV4K/htRq+jF2RCBfhiHKHe89HLA== 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=knXa2YdTm+tw2O2Z3g5sVOYsIdbRf0nIaq5DyOgCFFc=; b=nlOL3mwPOera1uObVe0WmH0x7k+uyBpH/Wb4gfHgLzNlLWRXVK50REdt68VB5u+2anJHOG2kHJ026WmT28n9X/9rfi1P4bSmT/a+81j7/j3NGHcbCHPphxYECOJUXfr4c/1eKkF6bGtZbbeVBl/Yv29UCanbvfa/c8pzrB+G/kV0+E7sW0gQY3d5AuCZxXG553Q3OiDJp4Wg3Y7I5G4bjyIxjbjBwQ9zweKf9uneUDHVWiyqMN49aciCuMh7Tu+v5vc8+azRtnbzwnZsgaPplFDqTTNXSmID6C0fC655xdJ4VFmcVQY+fGa878dGDVkQ1ukFIlojI/2xWAW1zSnyZg== 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=knXa2YdTm+tw2O2Z3g5sVOYsIdbRf0nIaq5DyOgCFFc=; b=YUz7OmdBbwoyjTIDoc0SiH4wskUnesSx27FnFYm3nv+Wd8AAq9RjjRmjZLmhgvTna9abXVIVznszrU25iF9+JQ9DXWvf4NcLkARiy4w8J2iq104LucTw869jtGeGgIxMx3VZ6wjNa6abf0uKJQL1cVi++loQhl9EDTXtZqM5DroDahEXtcDqWflThnJPVSnOkkQCPsyaUn2XWF/Dx6+N9n9gNwkAjrklWRK3BF03D+aVLXDGFNgWv55klI9mB9XITqMrxegeD+CF5hJ3ue1kB7MOrCZ+jow3UbN0qpDCxdhhUrY6DOZf2F1vXxKX38+rMUdjo/n3zm++J+SG7gxNaw== Received: from AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) by AS8PR03MB7045.eurprd03.prod.outlook.com (2603:10a6:20b:292::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4566.22; Thu, 7 Oct 2021 09:10:07 +0000 Received: from AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::700f:d70b:3bb8:4d51]) by AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::700f:d70b:3bb8:4d51%7]) with mapi id 15.20.4566.022; Thu, 7 Oct 2021 09:10:07 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 7 Oct 2021 11:09:50 +0200 Message-ID: X-Mailer: git-send-email 2.30.2 X-TMN: [MZUwxoyKxl12ob9zlR2lxZ9qm/xTXcfB] X-ClientProxiedBy: ZRAP278CA0017.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:10::27) To AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) X-Microsoft-Original-Message-ID: <20211007090957.684660-1-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.193.170.49) by ZRAP278CA0017.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:10::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4566.16 via Frontend Transport; Thu, 7 Oct 2021 09:10:06 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 303a73aa-ddd4-4e67-df08-08d989724130 X-MS-Exchange-SLBlob-MailProps: EpEO96k6WokDOmO7FPg+hdJcmMDlskBuV0I6tsyjjLRHDOa2YihyIFyDSFVN/cKW6lSk7kZfcNlsVjj4EGKqc4WvSqXYiepfx99hTSPK17lIephJrG5fSt8oo92M38XY01slywptdqhkUimPdqE5zdd2fUiq/gMhW+9c1PVNlJ9Ae61m97V3FaYtjymHybIf+PIKzqu0qS/nHHiFz6zOMPOFudVOv44FE7lhx9dv6pHHb1TsTVOF6DVBLClP8FL8cTb+G/TQ4e55IBkkZAMsXy+H0FLrS1jfjUw/SJ9yVxoWo8ys3ORU/hHCr522c3ZD2R2BfrnRJC5xI+yiFOjAvgApQVToxHQizTXmmAMf3C4O5dmP6p6C+S743T0iRlymWphqZBjP+RbS83Zlo32h3bKIO1Jz1Lg62wNUoSRq0qOV+5/YHRaxtjF66VQ6aATBdCVBEw7u2U7kYc+lXNjn7Y1l777jjBjVxjs7Eqp22F3gfx1kibeH+5XFL1CEE9Qw+RdBhaL39GjaLit+Y0M04qcz1/leGaHVsu+bG+gOBLhGsDUJ+shyWS52vutSQjNcIz9VUohWFm6r7GnC0sljunn4I/nBt4b/IJyeson9/ZUPWxitYPQbjaXxPB4PrWjvGoMZV/Mk6CtmWfzMOrVOuVU9V92mlX1fUk431SW6eDI+0dGa/htOEG//MFI2mfX2Wy5Xjdvu2gIn4CaJh3g9B4godAVWgtCpp1i1IrZI/i4FUuWF7j1OXZDj/V3R2TaASysq1PcragM= X-MS-TrafficTypeDiagnostic: AS8PR03MB7045: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: juK+hT7YjjMwBkIyyVwqhh/FqR2JTBIYUfhQkcJX6KqYq4YmIMRbmJwdeQZ8gMmGHCKd3n8eP4ZBx6Xc/csTdagtDQ6J7j+tjgWfIA1v0ZusuHKwENzOSYiIU9Q/2aHZJrNR2MM9MDNruwiTXBdI9WQ0gQ2D99viFXPP1pKmF2lwklzn2Af1L1IPSIHkTewqsYvALGFtm1QChpBgTkOtvIMxH+R7pFZZ+8pR/dYp/7UbSwpaiUGwqAstRZwdQyfx2ar2BuXtI1G0KkWeLJtAvXTeIWCQ1rmw074eUfUrWLmGNYUPqiIC7KSEzYITR4E8S+u31jardi083C162Zxf1423s5+REp5b1xlMnakggD5xV5VZ8EtnvIqHm+LXK1k75Sw1hgbhuasMjetnOMKJTOtvu3LWTLldXo4PbzEMCqUZndMOu54Iskntqe+g4Sdk X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: eojZFyZsL2jrniT+qztNj+6gFJ5GtcAcA2mMCUksERbmWYwaLL4UM5VLv1zKGPtsVY0PHpWIeyHJfIjGCu32ipI9bZ/1lsgZ//huSWIXutQ5MQ6VDt6XJBWoIVq5AfFIYSLVIYS4WA8JQwkbiDhWEQ== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 303a73aa-ddd4-4e67-df08-08d989724130 X-MS-Exchange-CrossTenant-AuthSource: AM7PR03MB6660.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Oct 2021 09:10:06.9116 (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: AS8PR03MB7045 Subject: [FFmpeg-devel] [PATCH 1/8] avfilter/vf_w3fdif: Fix segfault on allocation 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 Cc: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: gH7BmPvxRmu2 Signed-off-by: Andreas Rheinhardt --- One could btw allocate the work lines jointly. libavfilter/vf_w3fdif.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/libavfilter/vf_w3fdif.c b/libavfilter/vf_w3fdif.c index ea304164b6..c2ea76dfa3 100644 --- a/libavfilter/vf_w3fdif.c +++ b/libavfilter/vf_w3fdif.c @@ -275,7 +275,7 @@ static int config_input(AVFilterLink *inlink) AVFilterContext *ctx = inlink->dst; W3FDIFContext *s = ctx->priv; const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(inlink->format); - int ret, i, depth; + int ret, i, depth, nb_threads; if ((ret = av_image_fill_linesizes(s->linesize, inlink->format, inlink->w)) < 0) return ret; @@ -289,10 +289,11 @@ static int config_input(AVFilterLink *inlink) } s->nb_planes = av_pix_fmt_count_planes(inlink->format); - s->nb_threads = ff_filter_get_nb_threads(ctx); - s->work_line = av_calloc(s->nb_threads, sizeof(*s->work_line)); + nb_threads = ff_filter_get_nb_threads(ctx); + s->work_line = av_calloc(nb_threads, sizeof(*s->work_line)); if (!s->work_line) return AVERROR(ENOMEM); + s->nb_threads = nb_threads; for (i = 0; i < s->nb_threads; i++) { s->work_line[i] = av_calloc(FFALIGN(s->linesize[0], 32), sizeof(*s->work_line[0])); From patchwork Thu Oct 7 09:31:22 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 30962 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a6b:6506:0:0:0:0:0 with SMTP id z6csp1283919iob; Thu, 7 Oct 2021 02:31:48 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyBYiFwXWtTuxnF8Py3pSnRMNCtSHOslyEfQTPc3AdMgcgwi0mB/XbDYfMVnnX4/ZRU8jVW X-Received: by 2002:a17:906:7ce:: with SMTP id m14mr4409574ejc.192.1633599108605; Thu, 07 Oct 2021 02:31:48 -0700 (PDT) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id f11si8094636edf.613.2021.10.07.02.31.47; Thu, 07 Oct 2021 02:31:48 -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=@outlook.com header.s=selector1 header.b=AW7Ma50p; arc=fail (body hash mismatch); 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 2E29E688156; Thu, 7 Oct 2021 12:31:44 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05olkn2054.outbound.protection.outlook.com [40.92.91.54]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 8880D688156 for ; Thu, 7 Oct 2021 12:31:37 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MTtXGRc+4HFsDSWVfHWvaSMHvZbxbw+N1EJ+qEo+pnjCd07Jp9ZE6NWTvpZtZfQOD95ZxiTLJpLRdoeTK+2za3oez5ow5i6TEs/mtD/EynjyzFe3RkPvRZRo/aU4Yp4UM01iY6C4P2cr0q6fJ7k04fMj/Q5yCiCkghWiPZJTgCfSgysS2BWbhR9mmW1PVN7OHBv0OA/TGAogr3RKydRLdBmkVIPPIpc+m1ExsPmZKnj/QdG1jywYvt2WX6Vipu7g/U/WT5e1edkOgNd30mHuauUHyBcDrMtg1O4aDVGdr99XYt1UvpkbPo9zTmKpp61fbgafwfyhAqmMwl5Jw7UMYQ== 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=uMmlRlVlGZZECat/IfxM1EQeu5GDXdV2WB+UwXiGdxg=; b=lT7Gu525eB0FwF/NuZJVlZX0TBTAz/3vUfSUIseNpr5ZwzFZfd91o8qMeTbYxuEmaI+0V29VPSAk1AbwyVKtkv7cD3PakIXnGibb4dIfZVpQuua1uJbIo8osSsp3BnI+3AIIKAm8PxfMjSzuIW3mxZ1jaxnt/etwGkJ8QZUJnE7EKg02EOSAO09kNMwkrGBpIvG5K/yypdLb08zumiZg0TEYhzCWH0INgZmtvy5awiSmAGlReQpcrVnlOil0jcHU5KL1JqIPa54VG64/vFR0LqTMeT0ZilM7cHsnYzFXg391YI4pun7IdEQeZ7u78ZUzu6C4C+Gqj+hWAyALySe3cw== 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=uMmlRlVlGZZECat/IfxM1EQeu5GDXdV2WB+UwXiGdxg=; b=AW7Ma50pLFy0WMiuTNdH0GHIy5L9g0AaFlzDVQv9WoUG9e1Rif2MLqzlc1zZbVmUVS6PaoNLQCyHsHsX3hfycfAbfHbW2UbiTUye+ny1aCdBs+8axvl8882klgkYTCirM6F1T7NvypIZXegOEfNXVrXv/u/Zp8QntR6quPcIq1k1MzMN9oqC/SXGOhJeLPjXZVpw24EneIhMG659CXY9VlwNULiLn8hH4arOtnir8Ft4hn7Wa0MBQQoHzOl1Fo14a6tySLloiLf1/0TVJj/sLPNojLzfu+tG6F/kgg0AhJ4ewGDXaIzsEy5s59hbm2AwuZ3s5TunizlLhZn8LqQcQg== Received: from AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) by AM6PR03MB5605.eurprd03.prod.outlook.com (2603:10a6:20b:da::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4544.21; Thu, 7 Oct 2021 09:31:36 +0000 Received: from AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::700f:d70b:3bb8:4d51]) by AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::700f:d70b:3bb8:4d51%7]) with mapi id 15.20.4566.022; Thu, 7 Oct 2021 09:31:36 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 7 Oct 2021 11:31:22 +0200 Message-ID: X-Mailer: git-send-email 2.30.2 In-Reply-To: References: X-TMN: [S8QTzHWEUKNTlEG8vd9VUYCyG4ggUBkU] X-ClientProxiedBy: VI1PR07CA0161.eurprd07.prod.outlook.com (2603:10a6:802:16::48) To AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) X-Microsoft-Original-Message-ID: <20211007093128.684774-1-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.193.170.49) by VI1PR07CA0161.eurprd07.prod.outlook.com (2603:10a6:802:16::48) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4587.16 via Frontend Transport; Thu, 7 Oct 2021 09:31:35 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 73dc0c87-f33c-4b56-10a0-08d9897541a4 X-MS-Exchange-SLBlob-MailProps: f36zkjAOy3XbbBpNvm1g/7G4vT1kR4YeXl9CSOTN06Pr1ziImZ1jX3NwLyCS3bx7WvvFHnsdsCKa938fBE/qyYiX3MoD9p/E392OaX523iPVw7itLzD4OrVzDErpocQc+R5udpHct06U7bs0jYCqsRx8QdfKfnEHrqd0gScIbO46U2SgeIPfFPfuJWMAmrinkkTeVX/DROWySaPLRI4tdLPGF1o7h8LbeU1UgX1OP29J6KocdIQhnvIDBbuRreca+8vAsK6Uo6uGnchH/QmpRvLbuXlRJt51LnPgkFaPcmij6XIyOjvI3YixCsSAEn+4X4erJG0BvvoCV6rxgwQMnIldRCei8MZmC5zjoHoG3mO0oPED7yMdtKPOHnG7o1QLH4rjvsTavSUAVQuSmZhV7fKW9aGtEM1vVNijRpNRUj3MtJU/q/fUb19tIDP+azFh5im1iC1q8dxbRQmBxtO13IDipVh4i0Sjk7ksOePaewuV3jP+GD8SrDk6Lfm8RWnive8MQiv2MpwMmttN31S81cZJ6jy/DZmcNpkiRICW+mJ2LJT8UzBcvh6ai4uWoxBmtxQiqra9Di+KjvuJeBwsqKluY/R7nM8tAjPii46BvTkDC/ECAmXVZRRGe/aT+rlqCGk4N2KwF603i1A01lwCUROuVrevTTGB92KJP5ggrEFhMsQ3fvvuccfMutzfeo8pFu7TrwzixyarQpRaZQAmwlRBMrxdHARrr1nI+5rV7UA= X-MS-TrafficTypeDiagnostic: AM6PR03MB5605: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: dG/CRvwplugVPcm+3zxQgFnj98+rK8WAH0g5jpCip4ilSYF7lH0l8PgPo1OIdIk59UxUI0xnp4cPPYyX4WbH9d2S3Ghj4bqeFmBaTC80EzUo7lnq4ytUUPSeRxNzKHK7oB/DRnQMEWSk1vBge4Ale73gjnk8hJhf33gsxeE7Hs8LiE26JyxJlq2+Rin1BdV8fU/Ai10n7Pns7x7p4Dg1t+cl1MK1JuD9Z3WRTpb/amiIxJezInGYGkqU5lANPSfr3pR+ywgfbz9Ri5HRtmeJWQ7CHIkPxS+zAFPgxSFGKDD1yPrzYB8ellELZrliEj6lRXVPEIZTUUUMH/yiYgAQujG8BDQQ+Knsf9g/MPhXjqtjnzqIaEcVzGLDkMHe61jLyES40KipG5QDQZCa3SysAhOBQzasIEVVZJkQt8kxL8XUjj/0TFAsUPSIBg/8bR4m X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: swWYipjUayAEhulYXDjBxHmvYaDQ68IRLkzhdrGeMZhY6QnNn0PaHMHbrBAeNznBAGnfGPavvkfV3qFIKQ9LOMUPelFv6q+fJkFVPgKZqs6A7ZKKEtmbwdb/SbVqHDpo40jNKaznoJuET9/p8g2opw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 73dc0c87-f33c-4b56-10a0-08d9897541a4 X-MS-Exchange-CrossTenant-AuthSource: AM7PR03MB6660.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Oct 2021 09:31:36.0193 (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: AM6PR03MB5605 Subject: [FFmpeg-devel] [PATCH 2/8] avfilter/af_surround: Fix memleaks upon allocation 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 Cc: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: BONyLkHrzJ90 Signed-off-by: Andreas Rheinhardt --- libavfilter/af_surround.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavfilter/af_surround.c b/libavfilter/af_surround.c index e3601b9df0..efdf91a391 100644 --- a/libavfilter/af_surround.c +++ b/libavfilter/af_surround.c @@ -200,13 +200,13 @@ static int config_input(AVFilterLink *inlink) s->rdft = av_calloc(inlink->channels, sizeof(*s->rdft)); if (!s->rdft) return AVERROR(ENOMEM); + s->nb_in_channels = inlink->channels; for (ch = 0; ch < inlink->channels; ch++) { s->rdft[ch] = av_rdft_init(ff_log2(s->buf_size), DFT_R2C); if (!s->rdft[ch]) return AVERROR(ENOMEM); } - s->nb_in_channels = inlink->channels; s->input_levels = av_malloc_array(s->nb_in_channels, sizeof(*s->input_levels)); if (!s->input_levels) return AVERROR(ENOMEM); @@ -263,13 +263,13 @@ static int config_output(AVFilterLink *outlink) s->irdft = av_calloc(outlink->channels, sizeof(*s->irdft)); if (!s->irdft) return AVERROR(ENOMEM); + s->nb_out_channels = outlink->channels; for (ch = 0; ch < outlink->channels; ch++) { s->irdft[ch] = av_rdft_init(ff_log2(s->buf_size), IDFT_C2R); if (!s->irdft[ch]) return AVERROR(ENOMEM); } - s->nb_out_channels = outlink->channels; s->output_levels = av_malloc_array(s->nb_out_channels, sizeof(*s->output_levels)); if (!s->output_levels) return AVERROR(ENOMEM); From patchwork Thu Oct 7 09:31:23 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 30964 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a6b:6506:0:0:0:0:0 with SMTP id z6csp1284046iob; Thu, 7 Oct 2021 02:31:58 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzV9vYxjZodByq+WZaJ0VSym2009l3Jf9PyU2CyY4oNPkISTHSN1x3S081bmEcYR6TR7Ld/ X-Received: by 2002:a50:da83:: with SMTP id q3mr4859845edj.20.1633599118716; Thu, 07 Oct 2021 02:31:58 -0700 (PDT) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id z10si34929338edd.355.2021.10.07.02.31.58; Thu, 07 Oct 2021 02:31:58 -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=@outlook.com header.s=selector1 header.b=rnrdSl4+; arc=fail (body hash mismatch); 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 4A92468A1A7; Thu, 7 Oct 2021 12:31:46 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-oln040092074015.outbound.protection.outlook.com [40.92.74.15]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 2C3E168A1A7 for ; Thu, 7 Oct 2021 12:31:40 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GfIaqaSFr0ASb4Kb4Q1rlf7tVfETxQnr198uy3gBTLbiR6hJ2Xxaj9KY7/J29ictE6RW6A3z5aisxqjKNSlW6Q3g4wmjuvoAgYwvPbHteFyZdRRXFWKLSlpyAFrSh9HAfJI1gv5LKNQTD329Ogm+0bPpemiBzWqLQ7hz60RMPsvP0vCGtcg+S7CJ+65v7R3dAiIIRBuUkOWxWqS3BFaIiqahZDRz2eB7pgob67ZpHiu/WNK+y6rze7z99AbFmXjbW21Rl7k73+z/5VPrSW4uBbjmsfwdUctBol04iNyaiGuKKlN1XgjZvVpf4Z4beYLxmFes7x4X0gHcXHeQ+1ECmw== 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=nTqNnL1A851+i9xauKmE7D3WUaoZF38ZcsAGAggRmwk=; b=aureuSMbialaoa0leYKeR9AKioETNVHsuOhCP4yK3UjdhTV2jYf7LSnTlD5pfwzOpLQ3b3JoCUzacdrdBlymGw7ZbiIWw7O7kMi9alH6ReQuBCSLr1Qngi6wUlqCDflwO6uIMtCltRAhUfuJxYotIW3bgPNLwRPNaD9x3Y535AeWZyENLPRmictdoOkP0TqKBBu34G2Vt1Ao+Mf6+GrnycYkYprHxaInNU9zyexoXSHrw+85JzOy6Vu0IIPMQc8Yg2ydcDekZ7R9y3zWfyvNzvi/mL8+vA20KRcrUOvfDq/mB2zwpboQoDwNMRMmHo+NUK3hN5tMhpkYa6lCDOSIiw== 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=nTqNnL1A851+i9xauKmE7D3WUaoZF38ZcsAGAggRmwk=; b=rnrdSl4+eNDQd9dDNdGkhZnGepouOMeIDZAQwtZQod72t1+bwnS7Ae/poDlrkqH3iD2hajFfnuLvm9bzy51GKG0IJbYU5r51MRgvzo3Kd+2rN+0fkA7HBYFHmbKHphK1PpzO3mTd/LP1t9cvvzZzjZ1a/MJwCEQq9FrRtadeNornzcapUE2QWlzWUPKGtTVM6ASGnrAhWohJZ+lmvA93iPAdr1/EthIoOMtJqlkrFa1vTXlQsnM0JGcEHnjeJPnW4tCktIW1zLBGw1aSLntVj971AvubfL59lrcPtDDqlGKL16ka2SR2KI1ahpr1Uxsld6CQ7zchEtjqsmLYO4GBVQ== Received: from AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) by AM7PR03MB6325.eurprd03.prod.outlook.com (2603:10a6:20b:13c::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4587.18; Thu, 7 Oct 2021 09:31:38 +0000 Received: from AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::700f:d70b:3bb8:4d51]) by AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::700f:d70b:3bb8:4d51%7]) with mapi id 15.20.4566.022; Thu, 7 Oct 2021 09:31:38 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 7 Oct 2021 11:31:23 +0200 Message-ID: X-Mailer: git-send-email 2.30.2 In-Reply-To: References: X-TMN: [pasw9gSfGtFUH2CgOBN8Ce/MnJHWdgTh] X-ClientProxiedBy: VI1PR07CA0161.eurprd07.prod.outlook.com (2603:10a6:802:16::48) To AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) X-Microsoft-Original-Message-ID: <20211007093128.684774-2-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.193.170.49) by VI1PR07CA0161.eurprd07.prod.outlook.com (2603:10a6:802:16::48) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4587.16 via Frontend Transport; Thu, 7 Oct 2021 09:31:37 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 66cae59b-a8d3-439f-1916-08d98975430e X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNX0VAkTI1HkVp+VvoCHfVArD2MLzmT+KnLWxDuM+p4P7/5C+wh62qTwsF4YVmFVWBSum86w3iWOOZvM9dp1YmoDLoayL+Apj7Sb3tUq7Ba/agaW+YxRMTXnYippnGTDd6uT86ZiC/BOX/RsXxQfuhcXcjdLpKXLvAWhWrqJv3cpScjCuev02oWxkBA+xmGwckTHv4NAsdZkqk/1s/LoTRWEn1yQLDRrUEohJJpp4aVhjY7ihLee0N21Y8GI0zZmhzSx1HG2WVl3dm20+D8q8DcetIRFdJxFz2Wo0DvUl1VNvTEoz7poUbmnnkyzZLwf5CVOhHJy1IUgQO3W73dKtHlHKm/VWUydZff4lVThP5QVItIe6lXYDtKgG30r/qYkXvMvP60Dr8EBxFLhcgMx2MyaygKJ0Gooaqotn6jNUbljWpt4a/uwWq6H4nGtFF+TRI4y84XbYOljAQ2juAOyWlCveEQKzHMANl7V3UdaSd53yDNF/b2w1zSWEsDtwpTwdZt0gGYvm/2DP8Zgo3EiWvQFfnt8UHslpIVWwywmWxt5CFRD/dkwZ7EKAUo6rVLRajpaQQeOASi2hlcbGnAPCYvbBNSs+UIZPp0OK8PD3Ojezw5HkbLwoJ5LMnHarAmdqUG41gYnFatLrYoH1TXSeFNgiAXyPGl127km69F0lUoELIgMGomS4kewgZaMQLDCBdO/Mp748erGa9uJMoZuE+yy9vqdc1CcPRk= X-MS-TrafficTypeDiagnostic: AM7PR03MB6325: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: LjMKR1gFqXhqf4R5tb2B1zrsGgTIvgJr7ufKnAe5Kqo5ysa/4R9RbOhzwzNTSSKtIu/vQ3NHTABRX3jSbWiBBOugRD3RGnkS/hsWFau44QbBQBTSEgFQ6mUpuJUfcRv0tQ7DmgmGpCpd+D8VQL/MRz/qYxM7nQhoG/GL7rL09OskZ2bm8GshGT5OpPzFtIhqrOE950L3wJUvvqGTyPKPmF2prX24o0hsRs94AEKDWL4QGBtnpdkJPxyQ4EnZHJtV4ynK3ADt3xv6XI+rslnZOg1jMSUbN9rQia0K0w38eENgHgACo442sR0oRkksBcwqgwxqd/IDAeKYuMML2q82VsQMhZFFIzCCh3dFvu6Wa1zKRT44c6B9W4DFS2YFfycD21hdPJTZ3N/ZnR0hb743TFcBlw3Cax0meRVBmff15rPELlAmj/H48uCW7TOAJcWv X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: JLPKz/DahBVwBfBV25vJH/4zdcKnK/1E40cJscCVWfh6lc+Zcg6aN/gygTYgdS56GTPipEpIjtImLopOw74az3vz7ZcS6hdKY4vebwhXy9VrFzpEINdPR1DcLbGNddmrsry+rZMZtywTGYbv5EUH8w== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 66cae59b-a8d3-439f-1916-08d98975430e X-MS-Exchange-CrossTenant-AuthSource: AM7PR03MB6660.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Oct 2021 09:31:38.2575 (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: AM7PR03MB6325 Subject: [FFmpeg-devel] [PATCH 3/8] avfilter/af_vibrato: Fix segfault upon allocation 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 Cc: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: UGjO2a9jRbLX Signed-off-by: Andreas Rheinhardt --- libavfilter/af_vibrato.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavfilter/af_vibrato.c b/libavfilter/af_vibrato.c index c0cbcbf6f2..2cf1364273 100644 --- a/libavfilter/af_vibrato.c +++ b/libavfilter/af_vibrato.c @@ -127,11 +127,11 @@ static int config_input(AVFilterLink *inlink) int c; AVFilterContext *ctx = inlink->dst; VibratoContext *s = ctx->priv; - s->channels = inlink->channels; s->buf = av_calloc(inlink->channels, sizeof(*s->buf)); if (!s->buf) return AVERROR(ENOMEM); + s->channels = inlink->channels; s->buf_size = lrint(inlink->sample_rate * 0.005 + 0.5); for (c = 0; c < s->channels; c++) { s->buf[c] = av_malloc_array(s->buf_size, sizeof(*s->buf[c])); From patchwork Thu Oct 7 09:31:24 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 30960 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a6b:6506:0:0:0:0:0 with SMTP id z6csp1284195iob; Thu, 7 Oct 2021 02:32:10 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxIJb/WnDtCFfzbpnnwB7Qb3KaY555QWYF2WLsmgb/UZ4A6zKkGAxC9ILOZUBkQcMQgPM/1 X-Received: by 2002:a17:906:5d1:: with SMTP id t17mr4410073ejt.120.1633599130035; Thu, 07 Oct 2021 02:32:10 -0700 (PDT) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id p23si8876129edw.135.2021.10.07.02.32.09; Thu, 07 Oct 2021 02:32:10 -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=@outlook.com header.s=selector1 header.b=nLfqTAvN; arc=fail (body hash mismatch); 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 53C8568A3AF; Thu, 7 Oct 2021 12:31:53 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-oln040092074015.outbound.protection.outlook.com [40.92.74.15]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 4EEB868A3AF for ; Thu, 7 Oct 2021 12:31:45 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QIJrKsvjHKfXmmyTAPF12oQA3PM1YibKr4LonGIYrbWFq8ZF3SATMDEFrig07OlkR2y3ZGc07htYIGn4F9+0gg/T4e9sENJLsfZC2DlVExeiZC8m1FoQ+MdNBlYvAIp1r94+D1Sdb7cEuR4V1aOYpo5jGB9gK9ox8Ofr40I5dEYGniBmW/EpjQMZiMb74kae3bNd7RmH6D05rORf2xjsooV1Wg3sBUOJr5qAcEIYdUnCu5TKzj8e+FsqSn61YKykhSSAygL8Arn22WtNYXFoKDx6L3tFqgyCuTM3JRxYnyCUVezV89PHpzsQkAwHvmDz783MMq/onGOO2Li0OV8G1Q== 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=aAZCvHAFwTJoWosjcYzF5JDCjUgoaHcybDSyq4SnEP8=; b=iFmyLo59Ih1r7zXc43k/bM96PlOXsUzj1L5FpJ5NLYosdE6ZwJpSHOyOQFwyxY7bNASBIGaJE10OZpZiYKUYf50jeEY8WFce69yqgemCtONc62BsyhdIxW+66J+a6RLnOdNHXuO7EW3BmT5SnSr+V+YwmUvLML1c02JP8T1zmLAwJqQrriL3GJuoj7PXJnD+fK8SWqo4JZW22HY6w9dafV7NOJ7zXXwYZmHzHHQaGw/R1IR5ZnYqMd8UyLbvsocrZTfOvMaGD1ROxAd8mMMhWJKQhOm/NRTktV3g2b+FyPwmEHYJRc+lmvP5aBYu+rSXLhk4KmYO9KlLdLqJ/Xt6Gg== 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=aAZCvHAFwTJoWosjcYzF5JDCjUgoaHcybDSyq4SnEP8=; b=nLfqTAvNTa69IoOND2Z+UWjPngyv7fYXl1ew5M5uZxWT5UXz+YDVK49rRzTbOQ+F//p8OwCQHwLWf1QCh+irS54X+BjwNJkdr+YZaKcZRA7/md5kKUKmH/YNTfYY5r2U9QR+oTzgCkIdpw/VPEm4wJpQlsvJUsHA72NLuDZFBaS5/Nh0jkyKLjKYtyGK2Cpjm6CQFG9UAv2WILD3rOpi21pJFdlKuC7BGa/oO9x8JwzXEDVYZPBJk6LMmHcTcfNnz6CkVqlu+Fd87A9tw8DREZwVv1+U9zLt/z0HBf+UDgaBFiA4qZvzKqPZIGFvreV2utCk4f6+YkpcnrlDWo4h1Q== Received: from AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) by AM7PR03MB6325.eurprd03.prod.outlook.com (2603:10a6:20b:13c::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4587.18; Thu, 7 Oct 2021 09:31:39 +0000 Received: from AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::700f:d70b:3bb8:4d51]) by AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::700f:d70b:3bb8:4d51%7]) with mapi id 15.20.4566.022; Thu, 7 Oct 2021 09:31:39 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 7 Oct 2021 11:31:24 +0200 Message-ID: X-Mailer: git-send-email 2.30.2 In-Reply-To: References: X-TMN: [yphi9sIH8cmPyOHj7MDpq4c2IftcSmGc] X-ClientProxiedBy: VI1PR07CA0161.eurprd07.prod.outlook.com (2603:10a6:802:16::48) To AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) X-Microsoft-Original-Message-ID: <20211007093128.684774-3-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.193.170.49) by VI1PR07CA0161.eurprd07.prod.outlook.com (2603:10a6:802:16::48) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4587.16 via Frontend Transport; Thu, 7 Oct 2021 09:31:38 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: a77b1a04-8054-4218-3e9e-08d9897543d7 X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNX0VAkTI1HkVp+VvoCHfVArPm6el8Vw9k4e2pbr5rQZWWDnR6LTuxbircmJucGZJbdQv+mN+kq5DIeDxBuFHiSmdF5RK/QkaK/ETlNPCmwTm3WXkEfLaQWKCPhtCjuePaRVTsw+neB/CddKWwZT3red5oOoDcGsm9akYuTXUW28fLyCBcMJeA5Hn4VgJILqlxGNgyPXpFNZSDtJar9sm0uJJZBaQxD6ZH+4SGy550P6PcvSGKIZqqq+zjOOQWAH5qPn+wL40MjHwzrqNEjstl+3tKvY5JUZpvE0000QU/V9tJtkDkaTJGit6NBWV/N27xwwkdwPwYnBFLeFNUZjxIRQTlwK0ixIO+kGVCtXvIxAovgtDgeZAxBd+sJ8PT3LJSL2ye7GISJH5OPFtmpUJtDyunpRd+a9UyXXjmWVXeUe5+uxOP3Bb/SRU86jp3kOjU3Sz8djV9jgUJKLPopKuQdUFBKu4vl1Ua5vfntOIuwxGAE+sbljo171XdoecN+g/aopDDE0aC1QT5LhlScTgvTi7zJ/I6K4wYuvoGXsHNHd1k9nA1cmjSIxGRJHKz1HWZqIopFdpK8f/1UhQqQuLWSsDrEURcTcg7I4XRWSBVg+SpKN3tTRGVGyc4x+0dczE+zeGIJc+DuSYQVJFiysXTMW9oooI6zteny2/53PN+twUPeswuGd+S57XsIpeG4Tv787Cu1gctnMmkcEXyKgAtfYE9GTWSANjRI= X-MS-TrafficTypeDiagnostic: AM7PR03MB6325: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: VEalXXGOno9DGLdCJmW9JC79FoqroRCNuTkdf4holYSplCeOGPVCKzyZnAzx/ME0eAl9+bR3ARkMeNAKFeNeiMxbeaBrBsagxZrZ/UpUdF8JPM75LUm6Qd50L8VHE64qItmMLVDiGVJQbrN0c7bejpLZtOfltsjNz25iY4O/D9GXeHrWG1jjWbr7rVjPsCgsCGtbdNFtch95FiCPk24mL7/dlDV3oe3JIJZvjWBX9AVYBvAlYFUhs9+HRC8SO+ubj72iuOR2AGvsBJ2kKQqyw1uIpIsAY6wgUqYwrFfBu8+CqxDXUs5Yv9diwFfTCORPEePeS+K1F861SvqCWd2w/joF1PWJncTRdI5ECi/ievj6B1m4Hx+XQDPAsiiagb87ptSvHRNyIabbfJB43rMX5MWtYXnm82gxOy6F+oopsMC1+9rPgLo4Gyuv/pEq2V3s X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: yaqOB7zOF/Ayhg7km1N+uTG5K1p1GENrViO9+5B2/rvOjyHNx5Rb7vY/Ukx0A9MlbMuXwE08LMUuLxrXt46wY3VjSi85GxBkw0Un31JEZ4+NKzCdaiYyH11brID6qiQ/yb83QE62oT56Ja5ErDaUJg== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a77b1a04-8054-4218-3e9e-08d9897543d7 X-MS-Exchange-CrossTenant-AuthSource: AM7PR03MB6660.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Oct 2021 09:31:39.5071 (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: AM7PR03MB6325 Subject: [FFmpeg-devel] [PATCH 4/8] avfilter/aeval: Fix leak of expressions upon 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 Cc: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: 520nvlv8RbfF Fix this by switching to av_dynarray_add_nofree() which is more natural anyway because the entries of the array are pointers. Signed-off-by: Andreas Rheinhardt --- libavfilter/aeval.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/libavfilter/aeval.c b/libavfilter/aeval.c index 2dc8bace51..42cfa81325 100644 --- a/libavfilter/aeval.c +++ b/libavfilter/aeval.c @@ -124,11 +124,10 @@ static int parse_channel_expressions(AVFilterContext *ctx, } #define ADD_EXPRESSION(expr_) do { \ - if (!av_dynarray2_add((void **)&eval->expr, &eval->nb_channels, \ - sizeof(*eval->expr), NULL)) { \ - ret = AVERROR(ENOMEM); \ + ret = av_dynarray_add_nofree(&eval->expr, \ + &eval->nb_channels, NULL); \ + if (ret < 0) \ goto end; \ - } \ eval->expr[eval->nb_channels-1] = NULL; \ ret = av_expr_parse(&eval->expr[eval->nb_channels - 1], expr_, \ var_names, func1_names, func1, \ From patchwork Thu Oct 7 09:31:25 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 30959 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a6b:6506:0:0:0:0:0 with SMTP id z6csp1284352iob; Thu, 7 Oct 2021 02:32:22 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyCVYTbfL7bOsHEgDCgrIH5uRsjKV7MLL8s1jQMCWYy+QSdDCNGfKIztTG+0LIYEOY7Kdlk X-Received: by 2002:a17:906:4c4a:: with SMTP id d10mr4501526ejw.391.1633599141781; Thu, 07 Oct 2021 02:32:21 -0700 (PDT) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id j4si23064815ejm.726.2021.10.07.02.32.21; Thu, 07 Oct 2021 02:32:21 -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=@outlook.com header.s=selector1 header.b=MEZ7P1wt; arc=fail (body hash mismatch); 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id DC7E568A4CA; Thu, 7 Oct 2021 12:31:56 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-oln040092074015.outbound.protection.outlook.com [40.92.74.15]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 7159A68A32E for ; Thu, 7 Oct 2021 12:31:50 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Grbsk4B2oYkN1/6HT4PlPlnausL++tm0RxXD3hLQPFVniJCNa67GyWU+HjBsOL3cnMpnLdtEj7EKMeDYrvDJ8+9bMRpgimkGV/Rby70dYsLx3BJRNSHxwC6eqv6uC6Bgy/bPyBYiqxbW+if4F45O8a4Bo0vUgUZ6AI4pIscJ1pNfvk3XP1GFoUE2Ehc/cuFWYhfPdBtE/WOFLrkVNY5hzjWPciZFQV4mpxB/d7Cfto8QTbobVL6QpOnv1AiH/2p5xVu4U7NB9EdOVq4FkiOHfeyylS144wRxw4Ka1aeN9k0Wl+gmsRcBgz7jS9pN89trAEamrMPHNWk6kUqj7JYEIQ== 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=JMitidBs00mep3W5+AwWRQuIIx6j1vIZMVWKU9UO36Y=; b=XLqDboVFDqTbSb4Uc2lLXcLAcnFmdcww5k1ts+RlneN7dgM4zquNPVQkpTMB9a5sTjFIR+JpeMziTAk1/oiATBqDZ1muDSwZT5jAWek8PWEildDOhOIDZXzhLFmM+kH/UufYsL2I0c3jhQJWWeMqot4B9E8LMcbEDdm9j1oXYYty4br+tu5YR+KjNgBKt2GhVKiDy1lcRY953P1WenxZJrLhigeqInYIb+6UUm++n3GqGaMSmGr/LgXtTiLNbUZ+jk3Hd3txDgiPPrx3OIzHJiGli9XZ9vc6tLUQqmpad5q2GtRaoD06CCXquyNf8PMkSqYKw6+1pMNU0seYMsyqFQ== 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=JMitidBs00mep3W5+AwWRQuIIx6j1vIZMVWKU9UO36Y=; b=MEZ7P1wtZr18unkuxr9wJGJGKxBMmiPo651u+g8+ThC8jkqNbV/LlUfmVouatfNUXNao2z4iJKMsAOswBgvOOCnfYDx8wIQa4tn+St0XFutfnNzDjlRpIphoUjf4XDz9jHKTV/QYlznRKDiVkAIyruIH8MVW7vjE7mYJ7BTFmSYVl+S5KJL50fhQ2RdimrqoXa6SzJhBZ1HdbrSrtvRdNZY/PO/PGOmArPSh+YWZbxcKRf3z8xjitO39Pqrtog7ufJgDXWX7yH1XEUJiZzk3ydM+SM56F9D5RxjavxtIXGj8GwZ45xDO5IhzXU5INAMAi8g/Ak7fbi7jIwm+QIeGFQ== Received: from AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) by AM7PR03MB6325.eurprd03.prod.outlook.com (2603:10a6:20b:13c::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4587.18; Thu, 7 Oct 2021 09:31:40 +0000 Received: from AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::700f:d70b:3bb8:4d51]) by AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::700f:d70b:3bb8:4d51%7]) with mapi id 15.20.4566.022; Thu, 7 Oct 2021 09:31:40 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 7 Oct 2021 11:31:25 +0200 Message-ID: X-Mailer: git-send-email 2.30.2 In-Reply-To: References: X-TMN: [c17XJZQAzxBmsXKxL9OWfVhwwUSjqEtN] X-ClientProxiedBy: VI1PR07CA0161.eurprd07.prod.outlook.com (2603:10a6:802:16::48) To AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) X-Microsoft-Original-Message-ID: <20211007093128.684774-4-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.193.170.49) by VI1PR07CA0161.eurprd07.prod.outlook.com (2603:10a6:802:16::48) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4587.16 via Frontend Transport; Thu, 7 Oct 2021 09:31:40 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 19a0ada0-d2c6-4c00-d0cf-08d98975447e X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiStnrXejT7dVM2UBhIQPPsKDAy5EmDpYHqXaccev9XdnS92gs5sgSKTJrCVdOhORr6mRcTYzTcmi99XT5KqYkaZ6SRC7XDkmsSLUkNY9TSyLy5neHYDAQpl6uwG7/bqGylnuljupsnVW3IEwJMTcehUWnyxepqBSg4qNEIYQGUvd/plXVlbrxj819MSj9wsRIaDlfgiM9nAEh2i3bQPdju935FojfWBhZIli9UFzo2sOo/59JXoeqNegmUX9GXkOGDcHVWf2bvy7K3/uiz4k6PDwfVvrgxtJM+Wbtu3KbQuxg7rgtYN7PFwkyvGnPB7E5s2x834qb1TTOFPFN9yTWI1ZSFaj62Msdm6/2cj0b3jIm/EPZZNq2jG3+jiTPrO2gxiSDVBeRRcVhZ6DS7xgdAEyZr57hCceSvTrn5e/hx0d1UyXAPUNy+ybCUYFpEqkcm5X3F/rRUeWJGIIbvOEwDrfhz2e/eMFAUjU2bx30yN+eP0a1+MN+M6wpbVKxF7uacAeKaaS7y8vT01qL5AIzlReY+9NzjmNBPUjkvsNBW/ewvEoeXz/CgZKFinlBnM5/78gc8wwM0qU8899wVfpMevZr/wCAMS/lpGm1kvtxheQUjZZ6PVM8EqggoXsNrG7tB7XnN9NKO0BUrBVBpKqQD3aFFTcNlivRrhR4U76ehyc9t9K3I0P4TZloVZrBt6LtuPsMbxwgrVnXL3RF/ymkrbg/sbh9ID0jb4b1fSnPzJDhV/lZu0NZHD/C5wn7rGsKY= X-MS-TrafficTypeDiagnostic: AM7PR03MB6325: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 14kZhHkcxzPcCjPEj7O5vz6N0/s23s3aheok3VuCIXoH9yfRKD5EbOmG5EX43fia36gaqmCnuzZyhkVKelKJhqOq0IRQKskmh0Nbd8/4ztsWfBtVfF84RTCkPNCRnk1QYNEuaAlTG1cGBctEBU26pEad2g1FHFt5GFxAixdQV24djD9UDHwWT+iQGWySstf2/ch5SlaVrbeL3we2k+Gk3LrDGtiHXn9ASYC31FFiVtv0l2Qi6Q2o3yIyeqrGYaHGd8SPmj1e4aM/hXfv3BEwV719HtKRLH/eaIqnaz5GncAdeFW+NEYbKUenrrbvVej4F5w10llrSVeMaYhxXVO2iAy1gjpalNX5Ng1OOSNmMAtfWb84jyOCbueg7tc6JtLts3jiCDEDgcOPL+xjs/7QHVSKrVo5zjbWOeB7ofdLebYttwE1wvD0qmVluT+iWWKt X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 8qOUz8Dae4fOQbasdf/8EuPHAXwhXuB47GpSjWfhwNokz0k9yGTaTfbsdEO5zyUdnHCz0kS9h+6YXXG+QRf17lrBo3cMtP4l1uFqCo9AZcCwPrJVfTdJzVuFPXFIvEww2BfhUT9KBcuvZap/LCTZgg== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 19a0ada0-d2c6-4c00-d0cf-08d98975447e X-MS-Exchange-CrossTenant-AuthSource: AM7PR03MB6660.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Oct 2021 09:31:40.5385 (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: AM7PR03MB6325 Subject: [FFmpeg-devel] [PATCH 5/8] avfilter/asrc_flite: Don't segfault when using list_voices option 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: H7QXy0TFs1/+ Could also happen if initializing flite failed* or if an unknown voice has been selected or if registering the voice failed. *: which it currently can't, because it is a no-op. Signed-off-by: Andreas Rheinhardt --- libavfilter/asrc_flite.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/libavfilter/asrc_flite.c b/libavfilter/asrc_flite.c index c861f5c238..0789dd6ff3 100644 --- a/libavfilter/asrc_flite.c +++ b/libavfilter/asrc_flite.c @@ -196,10 +196,12 @@ static av_cold void uninit(AVFilterContext *ctx) { FliteContext *flite = ctx->priv; - if (!--flite->voice_entry->usage_count) - flite->voice_entry->unregister_fn(flite->voice); - flite->voice = NULL; - flite->voice_entry = NULL; + if (flite->voice_entry) { + if (!--flite->voice_entry->usage_count) + flite->voice_entry->unregister_fn(flite->voice); + flite->voice = NULL; + flite->voice_entry = NULL; + } delete_wave(flite->wave); flite->wave = NULL; } From patchwork Thu Oct 7 09:31:26 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 30961 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a6b:6506:0:0:0:0:0 with SMTP id z6csp1284561iob; Thu, 7 Oct 2021 02:32:35 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwjRNO9lBdysVucDiAu2uDj5C9I4FPH6QFRp2J3zygo5L6IfQ3TNRJcpwm1FqBBjrq+CRT3 X-Received: by 2002:a17:907:9908:: with SMTP id ka8mr4603720ejc.164.1633599154930; Thu, 07 Oct 2021 02:32:34 -0700 (PDT) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id l4si38587182ejo.650.2021.10.07.02.32.34; Thu, 07 Oct 2021 02:32:34 -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=@outlook.com header.s=selector1 header.b=V5JA77wZ; arc=fail (body hash mismatch); 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id DB2E86802B6; Thu, 7 Oct 2021 12:31:57 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-oln040092074015.outbound.protection.outlook.com [40.92.74.15]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id A12EB68A43D for ; Thu, 7 Oct 2021 12:31:55 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UlJXUuYHTiKT6dxQAVx0iKc3GD5A5L/TfX5AbW4v/j7DLBcilka8u3s2QkKUFyOSeYJar0iM2iOEfCupsSvuhxwPx47FkPCVzwqGyygphZExYlkZjwcb2JPb3nX3HiAOEP0CzxBfDUvmUh3HSrfETGpKa1bOqzveJEzF8YrVKMCqFaIRHeMEO/C1ioqMeA7evg9funmQV9+DBDuOpCWkp35gPnE6m/8QAGvUSq/fhHr0EfKqWC5Y1bR/2I0UQpQ7BN1nAruygCfmwdJ2x95/xzrht1Ot6BP2X9mU1DAzbzPF5OQ2atXRyZoXkC2h65idaWUw52tbWq9/c7g7xFNW2w== 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=dsS2jNqD73ks/8rWknmvuwtL+92xtQB6Sxdk8JeUG10=; b=aEhEe3aLOXiqCJX2XhUK+To/MfFIm8dB/6CMCOlPGC7ZM4C1MSvDhGVJE7sFI2o7VFgRy7o26SwLSK7YRB14csYaljsy7RaajZyf1LJ+qQqPelWZHuVV5eJnlkD5zKbrbu+6lLej+S6Wb3PwbdJ3G9W6DNEpQRMaDiCGW0NoC3JZqMdFxdseEVgUTwyrVDZDJu+GjUKkIUhTkfmF189eRNldNpACBBjXaJR1UyGAzn97pu9RXi3rJKcjKsq0PFlAE0PvPUL1uotswHrzZlnl3Np0tfNl/EybaX/j5o74nWwxrcFWEIuHN8qapQe49Bs6hHUl4dJyB/zIdu7tucmN4A== 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=dsS2jNqD73ks/8rWknmvuwtL+92xtQB6Sxdk8JeUG10=; b=V5JA77wZ4C7/lnXzhUfNpzJTiL6awjPaNihRfJY7NBsYVpPVww+ZvezL9HeGJKXE85AobdRTGAO9VWkbZQUEkcLBVkgBLCrTgXDWglb+q0TbvTcAdfsbCyHd8ux3fNR57x2fOFtO1mSTJOCbTM5Sg4tRrhM/Mz1Mx13dTuhBhZEu3gjlW0UgNbQdI7RsU/1kpmzXKEWM4giA//4gLYjrvCMCihA4BNEjIuG2NOIAbgTqgWGkSyu+URWj+IeG1Ep2Scl5VPb6y2jbxx5ExT2SQO/2VVICuTvULRCKluMWYcsHCKFj91XQLSHYZsWQeK0K+afNNntCpDNpPDtQvPtQ3Q== Received: from AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) by AM7PR03MB6325.eurprd03.prod.outlook.com (2603:10a6:20b:13c::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4587.18; Thu, 7 Oct 2021 09:31:41 +0000 Received: from AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::700f:d70b:3bb8:4d51]) by AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::700f:d70b:3bb8:4d51%7]) with mapi id 15.20.4566.022; Thu, 7 Oct 2021 09:31:41 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 7 Oct 2021 11:31:26 +0200 Message-ID: X-Mailer: git-send-email 2.30.2 In-Reply-To: References: X-TMN: [m1fKXa29Zr7j1vhinu/w5x8f+ED7qgtr] X-ClientProxiedBy: VI1PR07CA0161.eurprd07.prod.outlook.com (2603:10a6:802:16::48) To AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) X-Microsoft-Original-Message-ID: <20211007093128.684774-5-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.193.170.49) by VI1PR07CA0161.eurprd07.prod.outlook.com (2603:10a6:802:16::48) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4587.16 via Frontend Transport; Thu, 7 Oct 2021 09:31:41 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: c8fab1e1-0e9e-4936-e23e-08d989754535 X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNX0VAkTI1HkVp+VvoCHfVAr8kzTikCt3sK7HKlGiUAEWvZ/26THEKnqxrM+QqysERfd5X3mJ+qV0qPweTjZKjzjZyY4Sey23uCS8DVjCgTt2GQyVubkLEsUXYaawOUG3snLzXcM3UOGB1mOO5yyuGfu6dIDdUFcD3wC59xV/e6jX8HNUCdI9cXHXIgia35ixifn69HDvy64blTR32QnCXVla1mxf7spUULVZbZjHKuDUSKVF9CdKwEDlvC/sfhZvuaXsNQ52FKR2Fz1wLOn28PS3qUTYXNfsfp6pnU6bO2Rmhq9gm2U4/1EVHLexsmQqzeYjImT0kSVeD0MGZwDC8e3IuhXVrlnW98GWJqJHf6CG81m5znQ0F6hIHC+208YfdayS7QbxBfi8CIz5gOq7mgrNlm46x5pRp12UmqxKYf8AgOpsHyFcDCmibKcZebEq7KymM4VAN50Wwh7DEPxKymXOLPtY/x73fuatXdxONLusXBA04g9OTcNPqyIpL35KPXtwlZYto8wBBejn58LwMS4Caw8phGrcU8yLgBmzsGTqoxRl7wa61OIuf1LR+pbO49QZHMzjfPzfk3inBo5tS7NCvun+kulUwE+ukwzOLkgmcJ8n3wvdZe7Yi0jTBnFRZH4HMzfsO1btEOMZ5J7uVj5Xn9mDpaxA4BlCjtb0XdZB53xfbyLMxGKFAXFC5rEZpE74GSNve/YFwWM6LUgxBpMQmgL2AxKRro= X-MS-TrafficTypeDiagnostic: AM7PR03MB6325: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: KLrYdYf1/20uJDcIo/2UL+KPT1VY18kR2xy0sxR4HbQvKLtmfy4rXTsPTfFIw5y2gb0L/BcoTR4465D/kAPXjrrKXFeMTUwc5YHLPWrovg0WRKrdiSgugtMJ/e/j9xPK00mBrf+PIV0RDNWaIatJrhZ2FnC573RBkhOZ5celJ2ieAIaO93lErzYhtzPwZsRyb/BN3Mz6Gmy95zzfw93ehe4VHPklQ01OXcoTr3/mXaPtuDRq0maktDLvair825jIzh2+3vgWItVMCwowzsSV9EEIw3/qvnPogZEXh8ygNm4jXFDA7ARNmY6PUw+z14wVLhy9Ch30557fJ7X1DHmNE+IF/5xwMl7Ti9Y4jCeJZ4Bcs5BhKz8bjpPJ00ekVbbafUgdTO0Gg9unpLw/y+AUJQ1QW63p4CTJpXzeveVRQcABoHK+EwwVknfor3WSrvy9 X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: l+tanNU9Rwq8wmjp4aSkeXjbBDLnJH/1/WbtEUoXjO/wW241RRCGps0yLeZOEmvNwUjiizfsFIog9VATLY5O0qv60r2h+943osurDMA/7lJlMVtuQ6hNuFxKsBL+tzM57QHI0Q2/l3knWtAM5B0+qQ== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c8fab1e1-0e9e-4936-e23e-08d989754535 X-MS-Exchange-CrossTenant-AuthSource: AM7PR03MB6660.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Oct 2021 09:31:41.7343 (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: AM7PR03MB6325 Subject: [FFmpeg-devel] [PATCH 6/8] avfilter/asrc_flite: Fix use-after-frees 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: msiZ7+YiFF6N When an flite filter instance is uninitialized and the refcount of the corresponding voice_entry reaches zero, the voice is unregistered, yet the voice_entry's pointer to the voice is not reset. (Whereas some other pointers are needlessly reset.) Because of this a new flite filter instance will believe said voice to already be registered, leading to use-after-frees. Fix this by resetting the right pointer instead of the wrong ones. Signed-off-by: Andreas Rheinhardt --- libavfilter/asrc_flite.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/libavfilter/asrc_flite.c b/libavfilter/asrc_flite.c index 0789dd6ff3..bd2ae774de 100644 --- a/libavfilter/asrc_flite.c +++ b/libavfilter/asrc_flite.c @@ -197,10 +197,10 @@ static av_cold void uninit(AVFilterContext *ctx) FliteContext *flite = ctx->priv; if (flite->voice_entry) { - if (!--flite->voice_entry->usage_count) + if (!--flite->voice_entry->usage_count) { flite->voice_entry->unregister_fn(flite->voice); - flite->voice = NULL; - flite->voice_entry = NULL; + flite->voice_entry->voice = NULL; + } } delete_wave(flite->wave); flite->wave = NULL; From patchwork Thu Oct 7 09:31:27 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 30966 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a6b:6506:0:0:0:0:0 with SMTP id z6csp1284697iob; Thu, 7 Oct 2021 02:32:47 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzLz4uRW45VgVmXbCYwkkEurMbaLoDOTh/IJINfUDxjNK8PzZeh0pLfY1pWrVVC3ZlEyu1Z X-Received: by 2002:a50:8405:: with SMTP id 5mr4739734edp.111.1633599167665; Thu, 07 Oct 2021 02:32:47 -0700 (PDT) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id kx3si36297109ejc.108.2021.10.07.02.32.47; Thu, 07 Oct 2021 02:32:47 -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=@outlook.com header.s=selector1 header.b="FvUtK2w/"; arc=fail (body hash mismatch); 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id E193268A5DE; Thu, 7 Oct 2021 12:31:58 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-oln040092074015.outbound.protection.outlook.com [40.92.74.15]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id C445B68A32E for ; Thu, 7 Oct 2021 12:31:55 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=G1h+IFd1mQEGYw9CC1jGSjh5Gp/gPbHX88ivomJnjC52jkHOW1oczKC5h6++1YKjP5rZmpnD+KgDkfICDSzEp7YvKVsOa3cTNle9Q35WW6RJioYZw9twDBylVrJzgsmYCd/JnAwLTHW8ai5NA+dLFOUfo6BkLh7m1O2ZHC2VX01zLvMj6pED2u9E081hRWkPMnY9ArLlBdSJxWstIYQbHKS1mlnWyPTtZtdj5SwbTRp3Lw50Kg/akmhkLbxIAgApXYIa3Aw2JHFEeeDTTCu31s43SDqvgrUbPYkJ2ybBrvaZlopGwVcW34Z3ybxJ6llKbCXhblAqOOjlVgtzYx83Ww== 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=s0rnziKD5S1FnfeEdKzafsRIS0YAgkFZHTdKi/mspk8=; b=COnLf74m0VvnLZMZJGBcYa4Ewu8ScIQss/Yd+Vi+asYy9dq8b7m20432gosIVVPcRQsl00blhPEcnW8X2+7Dbtw+JGXQbKIlwQSTxHhZme8+oMvLl+NA/P83QiSyaEknWex1MhVxyMYDduv35XDEvgnnstvKkslpVVd/64se+J+D52sMivnuVX1wqPIZP8hiPu8ap+CGQKFz9EKUy/cVnHJfrejUSKZGtAsNinjLPy8jbCUSXdObJGK7FvH9ZXPO+1g8gfzhPVyMNU4KdbKA9RyMAg7DLvQYnhfYdnZmdwVqto66wh8bcWAAl5Dm0UYbqleGvb8rQQkDMeNzaM/KVA== 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=s0rnziKD5S1FnfeEdKzafsRIS0YAgkFZHTdKi/mspk8=; b=FvUtK2w/ISiNFtM2cKxpmmDJp3X58/uJrKb5naffQkVN6DBbZ+kylcEcNYIei/jSpfTw7LoetKUTb7VFQ8gqJI06NrMSQ5X2PXD++4++QFb7K8TPArlv53vN0aOK0tz/frfsc280bpHeemDUthsMbfd7pZWYlkObt8VUW/LNGRPbnp4tADrtiCX33/+jTXAzHQ7Fe0CLj9RMZRvdzkCg+DEtLKU4/D+D1BErCAYQYMJ6JEghM74m3se+IJgiZzXmBPoYvIV5tvlBz/CyhoNSb2UPi3+pYlc0udRnqHQxwI4cYNSSRjvNysiD8vzx1MOtYISi+3rkGkrQyRjfx2lhGA== Received: from AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) by AM7PR03MB6325.eurprd03.prod.outlook.com (2603:10a6:20b:13c::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4587.18; Thu, 7 Oct 2021 09:31:42 +0000 Received: from AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::700f:d70b:3bb8:4d51]) by AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::700f:d70b:3bb8:4d51%7]) with mapi id 15.20.4566.022; Thu, 7 Oct 2021 09:31:42 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 7 Oct 2021 11:31:27 +0200 Message-ID: X-Mailer: git-send-email 2.30.2 In-Reply-To: References: X-TMN: [K6fU0XzJlI3jguxJ6F0WYnMUFedhZ1X/] X-ClientProxiedBy: VI1PR07CA0161.eurprd07.prod.outlook.com (2603:10a6:802:16::48) To AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) X-Microsoft-Original-Message-ID: <20211007093128.684774-6-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.193.170.49) by VI1PR07CA0161.eurprd07.prod.outlook.com (2603:10a6:802:16::48) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4587.16 via Frontend Transport; Thu, 7 Oct 2021 09:31:42 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: e1ede2fc-f9cd-4f45-13f7-08d9897545ef X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiStnrXejT7dVM2UBhIQPPsKAlirX2O5UQiHlf/nH0DiNnAL8XEUM22SF56bW2yhCy2abOl6PjQRb7CHsgFPvNh08eUiy1E7fppsTIplKWjAAJwfTuG39UU6bskB5KnQHTOhMbqBawzkWVXaXSfXuArdTjJtRq8LrK2uJVAJ0cucyLXwDSPopNbNr1ERrL2mrCt3QovTi4UUlcJ5iqXEsCuvZnrjkVupCyHCU3RmR4+A88e8vAjT+YQVzyw/fyXAJfQsIl5Lobho/kywxGhSi6ygjvKnho6A8v7uMw8llolncghyxU7Df4wXpvcNJYc51Q1k8q/OaC6N1r7ld2LrotpCImCzdTYfUwlov0lTowQQY27WUAetjXJnCDt9aQbnYO5GX4XkgfFlWFWO9QUQTC4V1xdzvpvaaPVVmzrI77IIsQFeCN+0diQoHHOaX7mUdExtS58fMGrrufVZ7mBk0US1agZ7SPinzRNB+O7lJpnZ+uzWRdx78qjHd+RXBhqbUgQQR7pW9HCeG/P7mXkV/+usQouhbH//a6M/Q7j6XYfhWFtpDhkcmo0kR2Rui0h++NHsuKlp/hvHsdm6iufyEZYvA1Mi8uZ7zio05hxQrAqEtO4e90sImw7/1jVDcu756u8XHPLrdnpDZazig/RYHkNmK6iBs61dQTqzhye1lRXjcWlSdfMv8RiTg33VLg9bdcExmDVukyam1Gy+YPx9ebA2T34PvPlXau3xvpZl5HmcH6xzA5SkoZV7cCAULfXTkj8= X-MS-TrafficTypeDiagnostic: AM7PR03MB6325: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: rBTeffzUDmcFfPeyhqSqaMQCzAvUdZumlZaggNfW8elEaySYSXDzGHu+KP3pj81ILLCitsQlrLbC2odPFGyjq/C0Oim3KzXxJwo3Du3ref3uSO32cS1JOwozdNIhkDz+6vtVUTK+rSbMDeGEOv2VdQJPugJl+2cZiSH4UwMhE8O0v4xExS0AEKtsnIdqEf+jPxEeIiSQ913R5axlLmNl9TUZjAIEIhp6uHKGbI5Gp5gL7/4Ke75YAoe4TPMRUk2qohrPt+f6V6IytzmEXekfI0ZPQ7eGxoRSIkRxnHxABwGEuwqcJ3OQIqli4nNvXz142lEIHFTmT7IdCekdFhEIzZYRGjdZjhFz4FSp6bhI2PkEHvaQfPRpEhxAIvVaqDQX9LkkCfNuXel5vs9qg+HbBWVokNBGcBkPrHlarrat4YhdO5UXn2j+iGmPHsOBYAvu X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: hpr+8HStlhVANTYo4SSULZ9xv0Wyw2h9RctoNg6kSLnpQiDcmJE75uzOA84ns3gcJr1EEJUtbwkSvzvG9Ol6bB73+T8OP/6JHfJpGDf611joWObpqTIU+1egmi4bbnXTRtL64eZvUnhiWmXwim9XAA== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: e1ede2fc-f9cd-4f45-13f7-08d9897545ef X-MS-Exchange-CrossTenant-AuthSource: AM7PR03MB6660.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Oct 2021 09:31:42.9460 (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: AM7PR03MB6325 Subject: [FFmpeg-devel] [PATCH 7/8] avfilter/asrc_flite: Fix races upon (un)registering voices 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: N5qYbHISXmmk The voice registration system in libflite is broken: It is not thread-safe and also not based on internal counters; instead any call to unregister a voice frees said voice even if there are still many other users of said voice who have also registered said voice. While there is no way to guard against another library unregistering voices behind our back, we can at least be correct in the absence of other users of libflite. The current code already tried this by using a reference count of our own for each voice; but the implementation of this is not thread-safe at all. Fix this by using a mutex to guard all of libavfilter's libflite registration and unregistration calls, thereby being thread-safe in the absence of other libflite users. Signed-off-by: Andreas Rheinhardt --- I wonder whether we should unregister voices at all; after all, there might be a non-libavfilter user of these voices left who can't guard against us unregistering this voice. If we did so, the reference counters could be removed. If we also stopped worrying about calling the registration/init functions multiple times (as long as we don't do it concurrently), we could remove storing the voices in voice_entry and make voice_entries const: Every user would just have to register the voice itself. libavfilter/asrc_flite.c | 29 +++++++++++++++++++++-------- 1 file changed, 21 insertions(+), 8 deletions(-) diff --git a/libavfilter/asrc_flite.c b/libavfilter/asrc_flite.c index bd2ae774de..6335a81f0e 100644 --- a/libavfilter/asrc_flite.c +++ b/libavfilter/asrc_flite.c @@ -27,6 +27,7 @@ #include "libavutil/channel_layout.h" #include "libavutil/file.h" #include "libavutil/opt.h" +#include "libavutil/thread.h" #include "avfilter.h" #include "audio.h" #include "formats.h" @@ -63,7 +64,9 @@ static const AVOption flite_options[] = { AVFILTER_DEFINE_CLASS(flite); -static volatile int flite_inited = 0; +static AVMutex flite_mutex = AV_MUTEX_INITIALIZER; + +static int flite_inited = 0; /* declare functions for all the supported voices */ #define DECLARE_REGISTER_VOICE_FN(name) \ @@ -111,14 +114,19 @@ static int select_voice(struct voice_entry **entry_ret, const char *voice_name, for (i = 0; i < FF_ARRAY_ELEMS(voice_entries); i++) { struct voice_entry *entry = &voice_entries[i]; if (!strcmp(entry->name, voice_name)) { + cst_voice *voice; + pthread_mutex_lock(&flite_mutex); if (!entry->voice) entry->voice = entry->register_fn(NULL); - if (!entry->voice) { + voice = entry->voice; + if (voice) + entry->usage_count++; + pthread_mutex_unlock(&flite_mutex); + if (!voice) { av_log(log_ctx, AV_LOG_ERROR, "Could not register voice '%s'\n", voice_name); return AVERROR_UNKNOWN; } - entry->usage_count++; *entry_ret = entry; return 0; } @@ -141,12 +149,15 @@ static av_cold int init(AVFilterContext *ctx) return AVERROR_EXIT; } + pthread_mutex_lock(&flite_mutex); if (!flite_inited) { - if (flite_init() < 0) { - av_log(ctx, AV_LOG_ERROR, "flite initialization failed\n"); - return AVERROR_UNKNOWN; - } - flite_inited++; + if ((ret = flite_init()) >= 0) + flite_inited = 1; + } + pthread_mutex_unlock(&flite_mutex); + if (ret < 0) { + av_log(ctx, AV_LOG_ERROR, "flite initialization failed\n"); + return AVERROR_EXTERNAL; } if ((ret = select_voice(&flite->voice_entry, flite->voice_str, ctx)) < 0) @@ -197,10 +208,12 @@ static av_cold void uninit(AVFilterContext *ctx) FliteContext *flite = ctx->priv; if (flite->voice_entry) { + pthread_mutex_lock(&flite_mutex); if (!--flite->voice_entry->usage_count) { flite->voice_entry->unregister_fn(flite->voice); flite->voice_entry->voice = NULL; } + pthread_mutex_unlock(&flite_mutex); } delete_wave(flite->wave); flite->wave = NULL; From patchwork Thu Oct 7 09:31:28 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 30965 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a6b:6506:0:0:0:0:0 with SMTP id z6csp1284833iob; Thu, 7 Oct 2021 02:32:59 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwreJ9EDowNV0h/aTAXWcETt9W+SmqezwAEOs3Gpc7dAiuyD9VDTeceMh0MMSurVG0q01tQ X-Received: by 2002:a05:6402:3483:: with SMTP id v3mr2748142edc.296.1633599179406; Thu, 07 Oct 2021 02:32:59 -0700 (PDT) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id m17si42152209edc.78.2021.10.07.02.32.58; Thu, 07 Oct 2021 02:32:59 -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=@outlook.com header.s=selector1 header.b=tC9iyGTE; arc=fail (body hash mismatch); 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id DA38168A5E4; Thu, 7 Oct 2021 12:31:59 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-oln040092073033.outbound.protection.outlook.com [40.92.73.33]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id D90FA68A408 for ; Thu, 7 Oct 2021 12:31:50 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=OSGMU5r+gp/HatO1bMzZHbppo3tqIma6g6kHEfcZoNTiQLaw4TDQcsDY40crJDO4aAPHb/81y5QB8CboSynUVeLo1/+mvfKu5nNXad2qnRRzww1DwmrdyKloXYABZ59wDFhDKUIQK/mvrkcXjjDuQSOQGeDKyyl1XMqOfaMTTf1YuKCX8S/lcj/F9oZWh2NlSY0CbWJPRgS/t3UGAVWRdqfJ1gmXVb++YMlSW3ZWGz4Cl6fXtQAtbO7eA38I4OfLk9o7VvCPvHQy2hLJ0BtHDld51g6nv/Rgzqx4ShlxtiIoh5T+5BHVOCfMHIh26p9rJqirU93jaY8jMy6TwjIYKQ== 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=WQ0V3AsMqEfTnqiP5ehsfxDb1N4wUvHJnjIwttsm4c8=; b=Oe5OaUgU+zZ1N/lH5rNYZnEIXX2sjxleiIwxAnwpfWmTP0qvS49ifZA825GvJY2KHlFmPEA2TB2W4RMsr7bITB1TJ/B5KMn3jvaU0KqOwhcWHelvqTJlVjgaZTHxKAGjwNDgp2ACcJ/R3eCIN9zrTNcyMa06DUo6M5rbRLcAJ7MWgpH2NtojD2LsKUxPYS71MQwTJrR0wFd2opZFitmMW3BXBUcmq8KuA2+PqdlFEt/W9dcIZGlMc0gIFc4Q7QZdOzsd2K/BKpo5aNgQsVRC3TgPPPpWqLvRZCDSPVKdYoy2YZeunG0DCy/Qsl0nempBGIHEpUKK5ddhmvETSput7Q== 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=WQ0V3AsMqEfTnqiP5ehsfxDb1N4wUvHJnjIwttsm4c8=; b=tC9iyGTEG1nx+3kkv1/z2JigHPvmcsP0kqlg8xXfqnXWEjAYzxlResJK1RyTjXSYCkWUDDyn5mAHTZqvLXN6wHZBXxBGfjOLngK7xv5wenT0EatV2e21T/V9LfKDfpg78Xe3OLSdgrGWYIffFISbyk4wEj4AEnU8LyyqoDCJ/P0ivUEyFAYMRHHV43Pb1SeGkwpFSRwMPmEMeyh6GnnNwqVM9+Dr1+XdYPG7Dl7/j0QgSdBMrpSsjlo+ITbkdENU0QmWHw81xWvNI1ykLU9D5fYGdsSaeiOcrUrXDmK5lcA7WiG26mr/pfFh9zfVkcBLU3QvsxYhuNlWZAO8lkdI9A== Received: from AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) by AM5PR03MB2929.eurprd03.prod.outlook.com (2603:10a6:206:1c::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4566.22; Thu, 7 Oct 2021 09:31:44 +0000 Received: from AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::700f:d70b:3bb8:4d51]) by AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::700f:d70b:3bb8:4d51%7]) with mapi id 15.20.4566.022; Thu, 7 Oct 2021 09:31:44 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 7 Oct 2021 11:31:28 +0200 Message-ID: X-Mailer: git-send-email 2.30.2 In-Reply-To: References: X-TMN: [JunjS+8KOKj+bwtR5KKyhLbhCSdbR4XR] X-ClientProxiedBy: VI1PR07CA0161.eurprd07.prod.outlook.com (2603:10a6:802:16::48) To AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) X-Microsoft-Original-Message-ID: <20211007093128.684774-7-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.193.170.49) by VI1PR07CA0161.eurprd07.prod.outlook.com (2603:10a6:802:16::48) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4587.16 via Frontend Transport; Thu, 7 Oct 2021 09:31:43 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 7e7e4527-c533-4b91-3981-08d9897546b8 X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNX0VAkTI1HkVp+VvoCHfVAryEiTCZrmDKdNW2QVt9MCrjKNKVciMTJRcB5sSEkhpuapqDYMhJ1STsj78kd3eAkeiCBp+St6Vii9BsoSe2Z2tRArvkh57Akp06NK45GICoCKBhXV9Ui0ZKLg3jcKG4Rq/rEPMNeQJQsI7Q9ajivgEVBYtpG+ZI9bcvPDQtb/zcULFe5Q79eT25w7iZL3wOIwibc9TB+eHpVHU1nLGvF2CTPq2IbnHLnStQCW9/WLdJcLHHumU1zknYA+VreLffNYd8EUlRlSBEq/zLYl55HhVbcVm9Uap/dJEhetMPF3dh5bDnpawfyo8k+anbiWworX975Q4dMlzMEH8sy3sDGmbqpoNmWGRqghx/A3bld4ItHc23GOd7YLA2Ne6Wjhk5SBPIlIOrNABRBfVXrvkrilQyyAPqpj4MUCDQYQFQmsBHGHJeZxCWhN0GFAOxUXxm1FQJOC0O/+tTX8qnr/QeHOXKeTTUQhftqs5oYTb02ol15D5QhXoSRtQ+BNJN1mWDZyfA1uMHOFrz8xYQeUlMdxTJlE5ZtXdo6bgID98x27DdTkFZAdJbodjfD1pz1RgZAsKtxVKhL7LZmOh75vZ5thFR4+WjMtJrY4MfTglMOR7Q92m+ArKvoGnpqV/WMVclvd4SChr8VOnyzLqAgG67eaSzGiTSDS3COO+UpfoTiXt472PDoXBVRqeiF116kuPvSu+u3IxQ9lNAA= X-MS-TrafficTypeDiagnostic: AM5PR03MB2929: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: CdYhYyC67UIcH3SHs6iAI0NtzuFFNP5LfuTDrk4ahpQPgbHkYqisNDqaH0F/ovF2SoRB4Y5cd0uZFy95dpbZEs7k9hOkJgQR89El3TV1ki2zHgzvLvvH6edhjeCqMOHjMaRvLwZR9CFgWVOzOi7LD0VQZio4ChSWgVHOpyfr9p6y5ai29brVOhRrcpVn+Mi+P52o5xWEh3e5/K5CFZ9/uQ4IGTu9Kzuw+e1Si9YMxeUIwPEtY4pdbSS2Vit41deD4Qcw1tz3bRDjOh2FNS4F7JbGSWQ69MBCyAtXWoGvJjvuu0HyBcOXMZDPvSxwnDrNPcWf/mpUSq7SqV9DccsTGPXkq9lUUYj9ON2k/GAyqxJsEhsCWffSUbnXlVukFSiY+9MYYSeXujsrR+hcJ1CliGjPmk44HDLB0jLfZ5Zpzk5aC3VvjmQbceSsuab5b7vr X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: YF/vrqxIQYrryYyiKMjMHONY2jy2v0K1WqEWg8OFVxuWSHscVVIcDmpL0m2nOvD2Ld61X1Pf14XMok+nzz5xkwremXgGw1sd+PzZq7jNus6EunFwyARc1ODdaYoOHA0azwe81Pi/X6jhyPnarvbqEQ== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7e7e4527-c533-4b91-3981-08d9897546b8 X-MS-Exchange-CrossTenant-AuthSource: AM7PR03MB6660.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Oct 2021 09:31:44.3150 (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: AM5PR03MB2929 Subject: [FFmpeg-devel] [PATCH 8/8] avfilter/asrc_flite: Remove double ';' 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: YanIptwmd93h (Inside a function a stray ';' is an empty statement; outside of a function it is actually invalid, but compilers happen to accept it without complaint (unless e.g. using -pedantic).) Signed-off-by: Andreas Rheinhardt --- libavfilter/asrc_flite.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavfilter/asrc_flite.c b/libavfilter/asrc_flite.c index 6335a81f0e..17e7a5b9bc 100644 --- a/libavfilter/asrc_flite.c +++ b/libavfilter/asrc_flite.c @@ -71,7 +71,7 @@ static int flite_inited = 0; /* declare functions for all the supported voices */ #define DECLARE_REGISTER_VOICE_FN(name) \ cst_voice *register_cmu_us_## name(const char *); \ - void unregister_cmu_us_## name(cst_voice *); + void unregister_cmu_us_## name(cst_voice *) DECLARE_REGISTER_VOICE_FN(awb); DECLARE_REGISTER_VOICE_FN(kal); DECLARE_REGISTER_VOICE_FN(kal16);