From patchwork Mon Apr 19 02:00:30 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 26962 Delivered-To: andriy.gelman@gmail.com Received: by 2002:a25:49c5:0:0:0:0:0 with SMTP id w188csp681940yba; Sun, 18 Apr 2021 19:01:17 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyujIxWLHkAdEjEp5Kx0QB2HUmAX0IuXroDFhQkSbtOJjmHOpf0DzIHkdIi3WnDdYxJl0Nq X-Received: by 2002:a17:906:3945:: with SMTP id g5mr19224286eje.427.1618797677193; Sun, 18 Apr 2021 19:01:17 -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 n18si5092289eja.397.2021.04.18.19.01.16; Sun, 18 Apr 2021 19:01:17 -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=OyFgW4UW; 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 AD641680969; Mon, 19 Apr 2021 05:01:14 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR03-VE1-obe.outbound.protection.outlook.com (mail-oln040092072069.outbound.protection.outlook.com [40.92.72.69]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 0DDD76806E5 for ; Mon, 19 Apr 2021 05:01:07 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Xz5JHaaWq97tAJtcRhzgHmnJLZuFzsQL/dDes9Hyv9dYN8iczkWZDGPcBmN0NN2zSIfHLbP7r+zt/xo6RZy9dIH+vjedbrh2Dmr4jS9Yvh84qPc6sC14R8Aq423LB+6jk5G+JWV+7C6O033/KkU2V1RBGTAr+1omoaDJaq9vzRsBtVcJMwIx7HTFWKKDZViOqjYXpYKSBFFTde4rEe64vSNHpkKncyHpz2VpSbwYlnTmXdKKXjKxg3RPvsMLSENnbLj27NbGDxgZ0DA5AV3em6Jpc2zCetOLc7QLxUL1iy/E8+qM5fgkKYjTT3friyQpyYTpVNILVrKHsbD3qsb8nQ== 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-SenderADCheck; bh=mvNSNBWje7hYraJ4CG1MN1sgXYvKJ/Lp6vNUu6YgWFw=; b=jLIl5rL7VtkP+LDSWhKTIZ2ACE3EHoJKjtmbXgYGpTv1vCGdCHOZmuTcZHruMV16uaHOyiTO9hI5dRdt+8RAE1J1/mAH5U/BQ+Z+4M8NJik7QGq7VYTGl3YuIevG3wO9eRWS/Mgme7WWzNgRi9ZSaqrOHeNUPeLCuHB0l4WXvktis/qrCmfJbC876K63vaKYWPBdUY+JOz3FWFb01rxAI7LDsOLJSHHxtxppmC5PNWrEIQqkpC+Re3QSZZTrT/feVA9DrTBHpVCoXXprsogD7+Ff9eSXdYJ7cBid6+ORlK74kltu2JIfB33oAW6eRD8CDt839Ms/lXjcKWWc47ycig== 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=mvNSNBWje7hYraJ4CG1MN1sgXYvKJ/Lp6vNUu6YgWFw=; b=OyFgW4UW+Ox800Gh/T3MS9dwkQM5mw77S2mZ45/3sUg2D9XF6+2Tm8i5vev54NfohXLdmXNNUfOKrb43lUKZLPQ32GLyoZ9EFhFEJmWDAVg7cCpnmEtd3WzDagXUML/cWFZewxJSDO4Xf6R+2Fn8wccHkvF1d/vxHXS8AaP7NgXLrqBR7t6/UpOC4Ag5mmC2hm4sWO5UFVlwIgZy8BwN+FqRMbM/OvJXRiAz5+ZPjf6JR7+Cmx4kBA18R/p8ove7ML5p6NedQ0h0awOhfe4tK+GnOUYzrwge5gmgSiuGlwGp2WvSqHcjOIwZ54lS3Hml7V0VyLUX982PryeyvKj3VA== Received: from DB5EUR03FT025.eop-EUR03.prod.protection.outlook.com (2a01:111:e400:7e0a::4f) by DB5EUR03HT092.eop-EUR03.prod.protection.outlook.com (2a01:111:e400:7e0a::413) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16; Mon, 19 Apr 2021 02:01:05 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e0a::4d) by DB5EUR03FT025.mail.protection.outlook.com (2a01:111:e400:7e0a::104) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16 via Frontend Transport; Mon, 19 Apr 2021 02:01:05 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:B02AA895B57CA20A0BE2B847E1B2468562F7DA27D476CC55159D053C9A976B65; UpperCasedChecksum:16F0A744E91F7B37A5C8DBF51905833F0644F600BDF977765BBF01E2241B2ECE; SizeAsReceived:7413; Count:46 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::45bb:c44f:2b75:23b7]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::45bb:c44f:2b75:23b7%5]) with mapi id 15.20.4042.024; Mon, 19 Apr 2021 02:00:47 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Mon, 19 Apr 2021 04:00:30 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 X-TMN: [AJD59ioWPhOAEIijOrEP1cNtC8CoDwNL] X-ClientProxiedBy: AM8P190CA0029.EURP190.PROD.OUTLOOK.COM (2603:10a6:20b:219::34) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210419020036.92826-1-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.137.96) by AM8P190CA0029.EURP190.PROD.OUTLOOK.COM (2603:10a6:20b:219::34) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16 via Frontend Transport; Mon, 19 Apr 2021 02:00:46 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 46 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 91c20cd7-a3d3-4ac9-6f98-08d902d6f2a5 X-MS-Exchange-SLBlob-MailProps: q+fD6XS3/UL5of3Fna0zoENiR+FBTuR3TZH/qKkkgc9jUd76BdNoGbTmWxf+59siQIy52KeDcjKXFUoV8ORULX5WRihxoLucSSCNxEcflVQ5BX++zupzBaKk9QdxjRQbCzHxvkl7LUTDOFW7+6JL6dtf7zzS0h8xOio6Ejm9nYwaQ2nUJa6ZtYHzhQGBRSV++AsLbSbLbSkWU/sWhoZYKpssQNy9Au5vZLGAE/84gmtZnOLk0hGD2O6SNt7Vq0TEq4ZyTDUYGRfUseeik9JpMp/OyF+JqSSTebyh+PiLK4b6VQhNkSacv8/1sVzMyzR6jB6Uk/+cJ7y/6awT6LoXI4jCShVvxLs0//o7uoOWOoejh5+rfr89pJ5h0NJQ48r1BrKWq6rdpVX4S8fHSYjHcd3+eZ+SvoSBwJIpgsnMcRZxe1q3Jnt0m7oszNlg7sjW6EokLEr22VipV7XjhQZsqdFcVWvjaY6URggEdmRWlZ+JANGEZwiDia03WpJsFclToveWMISv89bStVNmeJm/j4cUVGqeP9ZtdhzxdoMiKQE4FPwFJIIZWBfmjjKXBZF2PMrMamVwygKmkk6tcBzpmDf1oyvD+YrVeyPsx8c0i7i5VVxdVPm8/H0hyDwL46HGCMa/qcXJ2QH64gdKLCQC5SxZI07nmTRWiF5l385P8D8rFyBwZO6aLuVdNxqWa5WS/Q23ZdsmnHqb854caI/9VA== X-MS-TrafficTypeDiagnostic: DB5EUR03HT092: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: cyAOWXXb+qUzwoh4C1YcQwP0sVxOIadaeZbCZwa3/APbFjLLHL7ZIxVTaAP9OOxPF3MNiUYixeCUW8WeBaj/c5qMFHYbSsz+uRjIUABkrF9ajUjLdIoytXSnPSos56duNLGsgingOgcWU+yd3Ev+b9ZbAk4qk8F0QfQw+EZYGumEKEJbTNklz8CvJ/9++QP0YilK9ZQhsqPVyDcFPbOhYx8yj5VQxe0JXrPO69yQnfvUrKlqicjDaBD2dH//5XuklBy7MyNBR332n6opZ+K5mNlxMeI6OV7lXxICXi/bsqxAmyac693+GsUHwZGfCGHBNMwVbQ0fuulPrbKawqATO7xwXlMlpTBkcaUbUrXS3W0Aw2AdKHty7Rd3pmBn7RjS3XXovJEFYAYh3vAukXD+mg== X-MS-Exchange-AntiSpam-MessageData: pGEFN5JU1hkQsfLCXNU2Cw3ms1Ssnx/M8GrXm67KUo+BwoWLHNFflsy5dZCxs7rAhrbsJp1V3xaicOtQsmpiSewhlvsyOrifLi4sMlRU6+59lG/xDeq8X3tHp/erchUs1aEVDVh7oR37TOMhR3vS2A== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 91c20cd7-a3d3-4ac9-6f98-08d902d6f2a5 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Apr 2021 02:00:47.0649 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: DB5EUR03FT025.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5EUR03HT092 Subject: [FFmpeg-devel] [PATCH 1/7] avcodec/avcodec: Actually honour the documentation of subtitle_header 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: yBqCqVMhJpW/ Content-Length: 1415 It is only supposed to be freed by libavcodec for decoders, yet avcodec_open2() always frees it on failure. Furthermore, avcodec_close() doesn't free it for decoders. Both of this has been changed. Signed-off-by: Andreas Rheinhardt --- This might be squashed with the next patch. libavcodec/avcodec.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/libavcodec/avcodec.c b/libavcodec/avcodec.c index 760a98d8ef..24f6922d4f 100644 --- a/libavcodec/avcodec.c +++ b/libavcodec/avcodec.c @@ -418,7 +418,8 @@ FF_ENABLE_DEPRECATION_WARNINGS av_dict_free(&tmp); av_freep(&avctx->priv_data); - av_freep(&avctx->subtitle_header); + if (av_codec_is_decoder(avctx->codec)) + av_freep(&avctx->subtitle_header); #if FF_API_OLD_ENCDEC av_frame_free(&avci->to_free); @@ -589,7 +590,9 @@ FF_DISABLE_DEPRECATION_WARNINGS av_frame_free(&avctx->coded_frame); FF_ENABLE_DEPRECATION_WARNINGS #endif - } + } else if (av_codec_is_decoder(avctx->codec)) + av_freep(&avctx->subtitle_header); + avctx->codec = NULL; avctx->active_thread_type = 0; From patchwork Mon Apr 19 02:06:09 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 26971 Delivered-To: andriy.gelman@gmail.com Received: by 2002:a25:49c5:0:0:0:0:0 with SMTP id w188csp684536yba; Sun, 18 Apr 2021 19:06:32 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxXTTIq/+Ju+PHCBQGl1Y9i5pMLcqbrHPn7Fpf9lkzFpEE148N2i3L1xU2sdNJkBsOpOfY5 X-Received: by 2002:a17:907:1b20:: with SMTP id mp32mr19780449ejc.495.1618797992089; Sun, 18 Apr 2021 19:06:32 -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 t1si11168755eju.712.2021.04.18.19.06.31; Sun, 18 Apr 2021 19:06:32 -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=u3Ne+0T+; 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 30DAC6809C9; Mon, 19 Apr 2021 05:06:30 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR02-VE1-obe.outbound.protection.outlook.com (mail-oln040092069011.outbound.protection.outlook.com [40.92.69.11]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 37E58680154 for ; Mon, 19 Apr 2021 05:06:24 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=P32jOd3gj1L6/1Cs1m9DWkQFIA9vgJNxQCiCqHEJPTAkya8fYpnxQfCERzz/v/lwAKunJKmlF8vWINM+bHi0KJavpqDsiW1T5E4FX+8k0TXoXFOjHip//TFKIas3RXCY597jzfClOj8polXBYxVLCkdznviB8erbmobVDr5VkuygQ/acPuVt10kD2OoPzuUMCtx1CrJddjRAda2Nvsv/i7VI6FfyCXfgKrNiID99cL3In2fBOoPLhaeehhjYs3KjWbsY4sqzuEQDOHjvMKnkoYgr6bvHPiFUyolY74MPxBkCEGpTvXStQtpHNDh29J2jaR8xndd/h9G6Rz22zeN3XA== 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-SenderADCheck; bh=7kRJyPMdOd7MwriRN9pdWg9CsJRbCFe7GQrd6N9YiUM=; b=DN+cxkOiBB+tqqqC+cC8SFAdWeeRGYnJslR5KP2HjyQqppj0auItu5CyATCixazzU+zvN46kMVqJQjUQoJiOfhXws0wHTZz82zSK1Tw7trZmO7EWZIfL/F4OOcU1gU+PQT7lyIwxlNnCLaFsrrjvkmk9mnzTUqQoAaukle9ruE54xwT297WE+A7dwq/UKLQ/V7ByEvquosj3FErgMa62QLlWD7GbJtPteTMad3AxPFvzO2vvrU0KvXsIPMqb9ZJTJAjwY7ri+cFUFABmdD+HqgmJ997adaaGfSmCcvE9e3hlqHlBnU5tmC4KnWd18m7GoBqlrLFXb2KbBCxbyIbsKw== 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=7kRJyPMdOd7MwriRN9pdWg9CsJRbCFe7GQrd6N9YiUM=; b=u3Ne+0T+MqG+R+/oc3Kz1W/N3WtIKkrxGuBHlTHWgOINtSPjpEIWdtQYhrqqK+7fZIaXt4/VpXuisbG6r25KOyAqZdz814xQl+z9cnBonyTqwL45a9aJmCo6+iUH6lPxE+YKLCuL2w47mHMqEuYWBSYWCDt9g0zhbh0N+BBjAW+UAp4H5AFQ76GeZzvNoDpvm47Bb8Ll/ZqtQQMBWwbFjBOTVwXoIhaX1YF95IdTFHPxlt6tooWElf4ZBYXJEZqr6PdRebE4QVxv0l/SMKvuLNeKpGb9qJT1HO4NUA5GABAMvueoetbQpIKed39rLoDu0TC0PKCRC3W/6lSqBNqVjQ== Received: from HE1EUR02FT005.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1d::4d) by HE1EUR02HT126.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1d::187) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16; Mon, 19 Apr 2021 02:06:22 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e1d::41) by HE1EUR02FT005.mail.protection.outlook.com (2a01:111:e400:7e1d::99) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16 via Frontend Transport; Mon, 19 Apr 2021 02:06:22 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:0A83949482E2115CFC9F9804C2B32756F8AD6C005FF63008B3A4275D90272E28; UpperCasedChecksum:A61FD51E9CEA572A37DAB38FA5F3C89A0363FEF351B634D13FC9AF6C2893BA0D; SizeAsReceived:7596; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::45bb:c44f:2b75:23b7]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::45bb:c44f:2b75:23b7%5]) with mapi id 15.20.4042.024; Mon, 19 Apr 2021 02:06:22 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Mon, 19 Apr 2021 04:06:09 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [fOkf3xswYpQoX3oPtmVfmbyBeffr56G+] X-ClientProxiedBy: AM4PR0501CA0051.eurprd05.prod.outlook.com (2603:10a6:200:68::19) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210419020614.92961-1-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.137.96) by AM4PR0501CA0051.eurprd05.prod.outlook.com (2603:10a6:200:68::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.19 via Frontend Transport; Mon, 19 Apr 2021 02:06:21 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 2241ea60-9bed-466c-e2e0-08d902d7baa0 X-MS-Exchange-SLBlob-MailProps: q+fD6XS3/UL5of3Fna0zoENiR+FBTuR3hWolNC6uPIEuw9I3fhozbsqwsH6BPN/2Spea6G8RfmFT0CFumG4Bvc5zu3t6Xtjfrup7uh3rrbkgPHaQr2HT2l92LtWotDW6g29J8aagL5yfjIB1Se5/NILKjWCqDWyy4T7gvqfdMBl4NQVAnaGWttzbwdNG8UhOPGri282Hjt9SVu0E6zVQQFV/Z+BcIEFj92Jn58oO+zcv7tSem9vdj335RPJxYj3qkWzpbz+ZIDtju/TEwWbqdg64flNTUHz2+r+iMtf/3UaP/W7SCBFfi3HHIkwcDyJUr6TZRRZZbio403UAn/z3mTfxMq7jfOp2RiV1nOQkJi37DQ/f5hAh3fRXlyu+d9rs69rNmGlm9I/LOA/9peFVCHZ+7HLUhqHTrenDnfNHzGZp6pxgRkEr6FfhRezxsi7l3oM7I4Ed+q+idS5LO1foeTXQwGdk0qER1C1KB7fhVTRuLF5MOVQtBJCq1S9Dw1SpmrYfzy/PSCOYys07Xe7MOc91ic8eyT6GIHott50mEHhTN5MJgRiFeaFTPm+8TsllD4fAW2dGKFL6HjPRB8oY9VGyyHo3UvKqel9M/6wAhaFdERAk1eBVLoXPwNNyonfiHff3J1arKdVBhSdLv5OHZO+1uljktcV/btHC5pcbkXHIlXkWy0GU/w4MO035eP/RbA84lzSTHz+ojc2Bo56x9g== X-MS-TrafficTypeDiagnostic: HE1EUR02HT126: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: FMV783bh97ayyP/eFG1Q2XNikMz2HEJ6YpRaEFtDEG35GIwuY0LZ9JuBRcWVN25KwUFbswfbCxnNTn3SzPCDqBmwQMJgwI9uug7ne0wrg+PO2M/dT+2IpIWebPpulveUMpXNrgIZfBZPTj6hbDOte8haxpBjF9inEwrhPoVvnRULvtJwrepY+vXpe0RZO1LX6dSFsTnd7XQBqxJiIjZHKUnG/0lgPAplxmwK4u2nJ5ieZpjppfMrVzsaDv1yN/Al/0xXJ2kjNtkopvoUo90wBuGcEtQ2EOaHFAdkl55dXuE88PKV6HLFOmlyZJhI7gTWf0avqguuBb+OUoN9YTrnYtseHPxtSYZfgqgs3NQtNL1oOmtqSfugEY177I+FMDIicUscWNI9vZy3RHUssGqH+g== X-MS-Exchange-AntiSpam-MessageData: IL9gmp6VJKNAIzbriXLp9l/9PW0n1PR0YRclhv7id0sYWCK1hrAfpSjWlJcrXyJv2Qe6nkJ+zodYErQRtAy9v5jpBd4EIxUe889zQ2Xc4zVpcO/aooKcGuxhpJLA6BUnENz+trD15W1A+hixSQChOA== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2241ea60-9bed-466c-e2e0-08d902d7baa0 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Apr 2021 02:06:22.5844 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR02FT005.eop-EUR02.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR02HT126 Subject: [FFmpeg-devel] [PATCH 2/7] avcodec/avcodec: Document current behaviour of subtitle_header 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: 8L1gpTtDIeSp Content-Length: 1375 Mention that avcodec_free_context() always frees it even when encoding. And mention that freeing is of course performed in avcodec_close() when decoding and not necessarily in avcodec_open2(). Signed-off-by: Andreas Rheinhardt --- libavcodec/avcodec.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h index 8a71c04230..9b68aecd31 100644 --- a/libavcodec/avcodec.h +++ b/libavcodec/avcodec.h @@ -2011,7 +2011,9 @@ typedef struct AVCodecContext { * [Script Info] and [V4+ Styles] section, plus the [Events] line and * the Format line following. It shouldn't include any Dialogue line. * - encoding: Set/allocated/freed by user (before avcodec_open2()) - * - decoding: Set/allocated/freed by libavcodec (by avcodec_open2()) + * - decoding: Set/allocated/freed by libavcodec (by avcodec_open2() + * resp. avcodec_close()) + * Furthermore, avcodec_free_context() always frees it even when encoding. */ uint8_t *subtitle_header; int subtitle_header_size; From patchwork Mon Apr 19 02:06:10 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 26980 Delivered-To: andriy.gelman@gmail.com Received: by 2002:a25:49c5:0:0:0:0:0 with SMTP id w188csp684590yba; Sun, 18 Apr 2021 19:06:40 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxwZvcyhBX52B39a6V3LVXxXuTEmcWRQZDn0IWkRwp+qkVmyLexrSw6wjAZwAoRE7LMZfA9 X-Received: by 2002:a17:906:c79a:: with SMTP id cw26mr19280091ejb.220.1618798000597; Sun, 18 Apr 2021 19:06:40 -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 b13si10752534eju.728.2021.04.18.19.06.40; Sun, 18 Apr 2021 19:06:40 -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=RH7tVJPC; 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 37379680AEA; Mon, 19 Apr 2021 05:06:36 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR02-VE1-obe.outbound.protection.outlook.com (mail-oln040092069074.outbound.protection.outlook.com [40.92.69.74]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 4672F680A2B for ; Mon, 19 Apr 2021 05:06:30 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=h7TAM9Ht5ZklCfDKjQit6kGGem6tg9V0/hINZ6N9slnhLxQGnw7B6roRXvZNvmst6guWtgUCohF/kWHHl8pyxw6AC8Kxowjeq2XQsDihbA9ufr2/GzrQ7rEw7Ty/gb0K8A3yZTakMcIs18TmWZT5j4Ng7zVGOy20dKoKn5ZJAjPy9ELhjXJe0bsMdz/Lpv6Fw9sdcjNOFigGr8Pu28oIqI544g0WopF7z5WYbO+ubOeeCjlYMeRa1kU4zMQVNzibqbEjyaQZ6mEOP+ZiAxGUexSH5WeOly0HVlLOofc/M3ZUSF08L80Scjtwd2TzBoIUBi7L5otNU4Ex/myozo18sA== 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-SenderADCheck; bh=eqDGT/5VQK4i1wrKLusBza2H/Wvt3tTJ1lvrSDJ/txI=; b=CvyZJxWB6L2wfxuVbmoafFPumwpt9Fcb7ORinDnSQuyT1d+ZcXEezneK+5mpWDUx8dEdEUeS1LTfSW8HL+3ouP3JyE8x7CFr9YKP0DLf55WAgkdlk2KWyebb7KyOqSL6NmV/pafgBjbscjmpjz5gzdwTmdBo00dd2UsTyIqmvP2IS7ad0VlXRDSAqn9q7bojHI6TjoI201tAxkCm8YONsWQG85Z+u7+QVpK4Xg1ymohhptePkjwW/OVjVw6Jf3IUM52Ke5I/1XxMP/01Lnl/KGbLeTalLjPHKsa1mWXKy8bSBZ/BRl9LYsDJQeD97UGLNxy6H+ok2Gs2xNUZxn0c7A== 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=eqDGT/5VQK4i1wrKLusBza2H/Wvt3tTJ1lvrSDJ/txI=; b=RH7tVJPCsRuSJX40Iqa8yLF7A8BpEdWk7c37/WyYGbcgXBnNmWnoklHwwbADSuq0rhwk/ZOcOpUfPLvC0xoOaiwvPB1NtluzJTp4spsSsdFkJ0MMeQQbKZNe9lTVfU8oToJwxZUNmLfoTJHjOLv8rFxQ8cjUsXmDgt55TlSYhXP9WxyMU5XyGPWVo3rJ9mVt8T3YPthAAJBxYzyeZUTJZB17lxIT3CQsZZK85FaGdk6eVSU+H8hIGnw9z5IH4xLvvtsl1U+sEWbsHbKCgry23N8qSSCQ/GLvlBYq4UwCgjuw3t/tgCGygswKVirqhmp0DZYK/EllnqgwqywM9U3x5g== Received: from HE1EUR02FT005.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1d::4d) by HE1EUR02HT126.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1d::187) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16; Mon, 19 Apr 2021 02:06:29 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e1d::41) by HE1EUR02FT005.mail.protection.outlook.com (2a01:111:e400:7e1d::99) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16 via Frontend Transport; Mon, 19 Apr 2021 02:06:29 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:F36C6601E52D56B21FC59F3876835AA57B97D4C694FD1764C9252A2F96BAB372; UpperCasedChecksum:809AE24D62806C8A00FAC4135E9E0A588EA607FD7F6F1F2FEEA3D0C32F96661B; SizeAsReceived:7588; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::45bb:c44f:2b75:23b7]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::45bb:c44f:2b75:23b7%5]) with mapi id 15.20.4042.024; Mon, 19 Apr 2021 02:06:29 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Mon, 19 Apr 2021 04:06:10 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [BAsbq4t3w1Z1PgDe8bgi3BookYVdTivc] X-ClientProxiedBy: AM4PR0501CA0051.eurprd05.prod.outlook.com (2603:10a6:200:68::19) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210419020614.92961-2-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.137.96) by AM4PR0501CA0051.eurprd05.prod.outlook.com (2603:10a6:200:68::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.19 via Frontend Transport; Mon, 19 Apr 2021 02:06:28 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: bc4d5f69-3cc5-4210-8499-08d902d7bea1 X-MS-Exchange-SLBlob-MailProps: dEG5jEBie8k3vIlT3kWzJ/cu8hv3QmjNdL9QpWPiQOQuqbYwSX/4d+MpjtNw3rr3vuHVRKeKZWkVvP0wGH+1YWVGSIV7iCLJKU63581fcFFPZKCXojOf+EvMZ97qbrwTPoH2wSR/U7DIDxF9NbFM1H7jX2APsWdU6SFW2ETdZlbhvZ9Qm/PNmV8lKazd7fhccLvYo9/nBAJCYyhmI6PdqNX9b6M+KwEZJRrpZg3M+OaYHMscqEk+b4vqmtPnLtMEk7xVTKifk46hYeYYr7aGxMmSaF2fygymCCum+CjTxg3hMOeg3rEcOnCP/o6CIE8XlDkyDBPB7d0vZS78b9qJm8Ht/JKj5rwd6k9Alynef8z0+vI7/C/NRme4O/xOlB6kSqCgX9voT4wwIpQkTFrLTRXdHUBrfjs8NiUmPorBsShGYdy40MlthWxb8kxoU1mG6uEYTv3R7zErUKagVDCwuJ//Bzgoe0KX+N9CRu6Ga7xCh63PGPFAXUs3NTlLbJVnQkrn/Ban1WPvPJVd7XNFjdhpF/hSFJXxn2q5OGYrzeGSAFaPWwfoX5FSG51OL/BdMUBBFX6sjDAGhdOKmJAtIuWBanfi2gi7KKa7myM01/RmoIh4pmPEzK/5mvNVEUi7Quc5tkj0Uc6KdQGnTQLn4LLPj51hX/Id5Yn0yiYVaQlz4oBbCoi4YA== X-MS-TrafficTypeDiagnostic: HE1EUR02HT126: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: m5tvOFzaszP4HHuqFdcz2kaV7fZT4UwfttTcq+vVtXVphEUJI/oSy1je2ysyvqBwDYC4A93taYecmD+pVqFgmrQOby6BMqp62RtSagVP6Jvr8KI1qiHnQYdoBrLBs9yU3LEyfFjmhwmvbcKHhVQjhRXH1OrIUvhd5BEjJksGpt63N4i1z36QS+gW0AFSqY+EGtFz1TZqBXeLeQY4VrIDsjzmt46mvdj/yl+o7mqOU7tweMK7KmHr5i+hZCoAwMMG52QmeKdl5MBubRlI5BHZ5KH1zZ1My57dyJcaNdUOPI3+tWwqDf6JemTmnm+c8IqO6qyc8YkQ6EquLd5G0CJjsBk5u/UuROyRAEqJIcefEOiIpfthhJUyUot4W7WVEztVCrzwmdYMVG8jas5DO1RUWA== X-MS-Exchange-AntiSpam-MessageData: QvoQ/c82uWI9nBegYkXKvxPIWOKAoG923CDyVl46SfxWSTLP5polsqFSZfnH1O9vIrycyV6nD+KU294yL6aZeN4cm4eUHSIF7IUGTP0AqvjHP6z6u/JLh9+CjHF+aVwe2ouaSVlBZxzHw1/j1rFHvg== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: bc4d5f69-3cc5-4210-8499-08d902d7bea1 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Apr 2021 02:06:29.1165 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR02FT005.eop-EUR02.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR02HT126 Subject: [FFmpeg-devel] [PATCH 3/7] avcodec/avcodec: Remove unnecessary forward declaration 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: UzzJZ+LW3c1Y Content-Length: 852 Forgotten in ba6cada92eb7c3446bfb1d4525031d405a052516. Signed-off-by: Andreas Rheinhardt --- libavcodec/avcodec.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h index 9b68aecd31..b9b487be41 100644 --- a/libavcodec/avcodec.h +++ b/libavcodec/avcodec.h @@ -2420,8 +2420,6 @@ attribute_deprecated void av_codec_set_chroma_intra_matrix(AVCodecContext *avctx, uint16_t *val); #endif -struct AVSubtitle; - #if FF_API_CODEC_GET_SET attribute_deprecated int av_codec_get_max_lowres(const AVCodec *codec); From patchwork Mon Apr 19 02:06:11 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 26974 Delivered-To: andriy.gelman@gmail.com Received: by 2002:a25:49c5:0:0:0:0:0 with SMTP id w188csp684808yba; Sun, 18 Apr 2021 19:07:13 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyPdTDn+JFovI17dBxnWWWwNT2egTDw6ag8GFsvM287dHuk3X6ZyXGZFmbMRygSIBKgnabf X-Received: by 2002:aa7:d046:: with SMTP id n6mr22116086edo.357.1618798033520; Sun, 18 Apr 2021 19:07:13 -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 kg1si10661289ejc.507.2021.04.18.19.07.13; Sun, 18 Apr 2021 19:07:13 -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=DxTYoEEk; 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 98BC4680BE0; Mon, 19 Apr 2021 05:06:42 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR02-VE1-obe.outbound.protection.outlook.com (mail-oln040092069074.outbound.protection.outlook.com [40.92.69.74]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 67AC2680AF3 for ; Mon, 19 Apr 2021 05:06:35 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dnmYJQkktjt9SP20NSbu481TFI3BByQsMVZhV0BDW2PptelaqwcFvOBpRl5rWK8Iqs1WFw16R6cF1RsKwBoYV4eGnb3JU/JZZQlByRsGdUnigGiq6CTXMYy8b+lX82drTWoC9s+UCTrKesFYdAmVTsxD0dLDURM7I4zxaOYkcjJsrVhuRj23FV7nRnegys008HOgL4VLK1p8mcWkjGEO0QhQh/kM1FP3kZxhoqs5xgSp1L/UB7uccPyYjKLs/kuXEuTn4stGHMzV4+OwgSCrHSs2HQfHARGjn3dX4YAcnBbwGcrKgQdqy3hsZM6cRjUH4Pj6KSpnwa+ukvvEJK3FUA== 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-SenderADCheck; bh=To/aqpfzxXr8acykOvHr6o+i4QHrxp88D2Eh/c14ItM=; b=OxSUOY4NSsinQNz0lJG3FkoH/mGNf4i+QrNdeUO7yq2tyM9KqZhOLeAu2x/ZwA4JHEBVek3u/SrjiJyAMDKROEWnyc7X87QgH+ML2K8RkQCQAvBS24pWA+MQ1jgE6csHdF/C8WA4NEI0eQ0IOjILhrIQsPWQ2bmM/kts7Ni4EBQc4jFYONJ0dkwGYpKtByPlOtHYXCQoIyyzzGpRpjLaZ/575LOeW9wYUaEUG4a8yY8NXkIlepIYwjkoJab4UvCmN6BgdsZjMhndHSduyTvFG25wYjIE2YQI4bXS6S/k//chOL8I4KUvsBe7hy0nEd1C/qz0qfcb4k8Y4zuCw4kMIw== 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=To/aqpfzxXr8acykOvHr6o+i4QHrxp88D2Eh/c14ItM=; b=DxTYoEEkqnXZY4TNBSubdNCMfHv2DQT+6y83t3IhmVJGL9g/LvFFNwiTF0GFXzPr6NdfhgF7lW9iMyFwJSFJi9f+weOPKsP07E3HIHkIXc2MSuK1xJ4d992Zn7js6SBm9gwV1tbXrM0SW5YWp8AuzZuq2hbQCwWCpjNJPovLpclwxfgukcY7I6Vr9Nh0EtehdkrY5lffO0/619rkhEgTuHiIrlRx+LIw7ELyoQELJG3FN86Pj9NILcuHBkBnOg/DcMw9Y58Winjw1WP5Vhc/BPiZbc0mErv7nwuUv37h6cHM+m6xTKbHhe2+xyS+6za2YqVLHDRmGPyX+xj7WAlsZA== Received: from HE1EUR02FT005.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1d::4d) by HE1EUR02HT126.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1d::187) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16; Mon, 19 Apr 2021 02:06:30 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e1d::41) by HE1EUR02FT005.mail.protection.outlook.com (2a01:111:e400:7e1d::99) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16 via Frontend Transport; Mon, 19 Apr 2021 02:06:30 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:19C2FC0DA965B455FBF229800423A22BD7A6CA303A3C92E5DA46DD0704EDF432; UpperCasedChecksum:F722A53386FA09672687784F19E0BD2F24A411040EDD45C136FAAB5C0E831A96; SizeAsReceived:7609; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::45bb:c44f:2b75:23b7]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::45bb:c44f:2b75:23b7%5]) with mapi id 15.20.4042.024; Mon, 19 Apr 2021 02:06:30 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Mon, 19 Apr 2021 04:06:11 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [aL3mzZfADctlCfo+keNMP6ToqDTnEjpA] X-ClientProxiedBy: AM4PR0501CA0051.eurprd05.prod.outlook.com (2603:10a6:200:68::19) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210419020614.92961-3-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.137.96) by AM4PR0501CA0051.eurprd05.prod.outlook.com (2603:10a6:200:68::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.19 via Frontend Transport; Mon, 19 Apr 2021 02:06:29 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: b96e0007-10e0-47ed-035f-08d902d7bf72 X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiRNkiklivKM3qJlbManCLlc4TuaB4C1isb/l1492b3Dq+aqxo9pRWPOgREofphjc482tsedRt34U4VyXSYAOFEUMs8T0swj69aTlTSfikDm4DfrW/QeZqxYiwt24MImFY7MmBZdw9urrgADi2KHLsXWBiNCnVqlZCpQsnD75HDdhKrEBzDbUk2riFVlR4gNj/J89Wt4TcuQODXFfHY0G1YmfuJsQuo4bKnuz6BJYrFY9eoVuvl/lSu0Iua5Vjcattp6c9uQfNgM6kndVC8aHcVDYZTpq4T5bWLQ1YVeSBPGDhMDILqoD2eo/NDT2uZLYigLiizYMkEsMeVuNt7C/nQPC6Mz9PgQlye3gfTasGaAU7n9HeG+wjF/rDY6a+Z2dilZQpfmOPMUOFoUe/NkgQF4wzghqMHToiLnVfg5fCR+C5lbP+BnfTXGggDKoCuvJt8343a1Q2iXfnCT9652hu5iVNBNcsL7L9wN3qEMKc1LsGoR7wSYjuhMZiV4FItD3z0I0Fqdh0u4uGFbojj1Jhg6PSs6m17j50+I1ZxEiTgqzGgDC5R5dsr71W1KAHqWqpmSvtOBtNl1HpwD57OPeSYhVx17hfoXuJdXUgqiXD3nwzB32qM53tqN81S/uNSbxhUBCK7KhEykU/FRnyMrz+av7C2MszoqkvttvpXVn4CRK+U9qbAu9Ff2CCI0/zZiM0alJpthuDOpLAseCVYbCLX8VUk0xfOukOQ0GL43gBilnfhZQwcSsXvkoIjz4Aypk8U= X-MS-TrafficTypeDiagnostic: HE1EUR02HT126: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: SWAXeKiA+aUamh01GsBfDT2G9y6EmdeF/w+N7RrM54n4YpyDbt+g3Ke1YP6/3AgNpGuQ7fgU0AGGL738JK4J0lnbFLHH9jefpXKTliDZ7vymWLrqEOiWCS+2uVZZbOgYJzK0cP2ue1G+bVrnCijn5k8yMjJ2Lz4Z4npryYk63c6SoHPR+0YG86fRuAovnrbJ9J8rBzGyGfeJe+BwN8dGgod1yOEhP7JIJ4YsIDtNajSuSK+YgqT34CE1tWQPbNc85PBqQQsMbeK+CXOmL1odG3t3sjUtfzg1rHi33d2jRX79rWekyVDt1kwSfG0V3ao5a9E6VYeGFh6EJ8FvbW4gdJqpCu74LaGJXUcxviSTXlmWtJeDFP31+KbkB9+Ux1vuHqJLlleRDzY3K839PsO/uw== X-MS-Exchange-AntiSpam-MessageData: +F5xPeOiPpTT8B/VMqzsO+CcQK3av5382uniJKNoUX5Gp6EORgfObCp/QbwyarZKmLWe73AofoZep6cpyNCnSxNyUF2TePvB3KHhtfsUxooY1eX7AtngJvbG4uAI0mpHvGwhjAhodz+FGMtIKHfVXg== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: b96e0007-10e0-47ed-035f-08d902d7bf72 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Apr 2021 02:06:30.4839 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR02FT005.eop-EUR02.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR02HT126 Subject: [FFmpeg-devel] [PATCH 4/7] avcodec/avcodec: Free frame_thread_encoder on avcodec_open2() 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: z111Y7MROaSJ Content-Length: 1038 The frame_thread_encoder has so far not been freed in case an error happened in avcodec_open2() after ff_frame_thread_encoder_init(). This commit changes this. Signed-off-by: Andreas Rheinhardt --- libavcodec/avcodec.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libavcodec/avcodec.c b/libavcodec/avcodec.c index 24f6922d4f..6cff596f6a 100644 --- a/libavcodec/avcodec.c +++ b/libavcodec/avcodec.c @@ -399,6 +399,8 @@ free_and_end: avctx->codec->caps_internal & FF_CODEC_CAP_INIT_CLEANUP))) avctx->codec->close(avctx); + if (CONFIG_FRAME_THREAD_ENCODER && avci->frame_thread_encoder) + ff_frame_thread_encoder_free(avctx); if (HAVE_THREADS && avci->thread_ctx) ff_thread_free(avctx); From patchwork Mon Apr 19 02:06:12 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 26972 Delivered-To: andriy.gelman@gmail.com Received: by 2002:a25:49c5:0:0:0:0:0 with SMTP id w188csp684650yba; Sun, 18 Apr 2021 19:06:50 -0700 (PDT) X-Google-Smtp-Source: ABdhPJw41easc8kKWSMuweoPR001Z9FVGykhjcnLCqm4iGz7eZMdfZuMKFE0dSl2eXKkMz0xiPXl X-Received: by 2002:aa7:d916:: with SMTP id a22mr22730982edr.287.1618798010388; Sun, 18 Apr 2021 19:06:50 -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 o6si12937481edi.480.2021.04.18.19.06.50; Sun, 18 Apr 2021 19:06:50 -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=UQQz5GzO; 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 40F4C680B68; Mon, 19 Apr 2021 05:06:39 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR02-AM5-obe.outbound.protection.outlook.com (mail-oln040092067086.outbound.protection.outlook.com [40.92.67.86]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 136C7680B17 for ; Mon, 19 Apr 2021 05:06:33 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=V3YENB5Xvi6aF9dFit+9PORs/L7SxcUFEN+StLWLmcTcdUgjW1j/K74S5IC7+27HNZk78GpnbFqMYQ3yl7cL7s2V7j5Lgo04Qw+YfskrhEPwbmOhBbKnnqQMKNy+EGb6ftDwagdklJWso8MYGyDfMjCKpkB9RcTJKYvwq8e1AARMgc+Sy8VqxWCJIdaFOEcRf3e5EOAB2xAnFhTnagOY+mQREHLBfgZw7d6lKQxeJmjlRQHHS74elohdOTD9/pZcIBCFzG9IfmsI1RzgfBdbvLiYc0X6SX9tq/Tu2ieT4D9Tcti0hGDGlYXDsyCpJ0aZH+AB/Xa2rGhKQ6DLSQDlAw== 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-SenderADCheck; bh=ZQHppN7WXQf5ZhbQOlw4R3nWYrPH4oyjfrdpFboaEqs=; b=eKKQCELkfi1xyHS7utlOf+4ibONTxVGNneioTgDrLjS0e2LcwL85Jq1WsmJTR8rlNDufsZ//H7hodJNwmA3PErVPRF+ZgycTr6y9UwU4o2A3NDjEU1K9bBXM1RXxx1TM95QiKsEdCiUIPLZiCfllfqB4nMad2QhO7A4PhGDPvVpzNhVSxija2Irclg3+40c4zdRzLCwLTpjjMqoW/geg8g0K2G3jeukmusy11sB/LTboAGayM15Uif3foLGHyzf7Z5d8WzkUPyd/x/PbJ8CacI3L14TKkiU8Of7dJebyhOvwML2HG6bv6V98j9Y5ADVkCT0qlpA+QalSVk07N60TOg== 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=ZQHppN7WXQf5ZhbQOlw4R3nWYrPH4oyjfrdpFboaEqs=; b=UQQz5GzOnjoA+dAcCN9ZpYe8N1LFn1OUZEhB+919IuRPxAMIr+QdNXIgoW3K9ytH3dEyBMDpPKJwHZsO+Rl+Ce8DqOBSQIMb6rotaGfRthhW9yrPU6r16+kMWjHGu3pULqGDXu84/2c3hDDceycT0qGeFSdVy5IG+KWsKank5oONME43Kps9VyTG3qlNc0sYc3S8iEadt0gors84un/+76zY2ieD5CDzI7JFpKUaybnI3YSdQTtDREtzyKopJ1BCH4+r5CL43hQUzf8EiBnIlF8lBnrmJZ394TfQyDq0pJmTgpizHo4c4BDejcQrXi3AmYYjQn5V4ye+wO2hSBN1dg== Received: from HE1EUR02FT005.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1d::41) by HE1EUR02HT154.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1d::491) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16; Mon, 19 Apr 2021 02:06:31 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e1d::41) by HE1EUR02FT005.mail.protection.outlook.com (2a01:111:e400:7e1d::99) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16 via Frontend Transport; Mon, 19 Apr 2021 02:06:31 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:8D4FE0CDBD866EEC8A92FF87EEA2C4A691DABA5EE4A572C02C3DE612D36BB169; UpperCasedChecksum:5C7C46F83BD099D9E9098B5C25F4FA2B5254F445C9DB91327B6D6643B25940E9; SizeAsReceived:7606; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::45bb:c44f:2b75:23b7]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::45bb:c44f:2b75:23b7%5]) with mapi id 15.20.4042.024; Mon, 19 Apr 2021 02:06:31 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Mon, 19 Apr 2021 04:06:12 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [JjVQRrG4Lp434tQhFm9vFwmSnil4Vs/O] X-ClientProxiedBy: AM4PR0501CA0051.eurprd05.prod.outlook.com (2603:10a6:200:68::19) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210419020614.92961-4-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.137.96) by AM4PR0501CA0051.eurprd05.prod.outlook.com (2603:10a6:200:68::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.19 via Frontend Transport; Mon, 19 Apr 2021 02:06:31 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 3bc4db29-e928-46e6-1eab-08d902d7c03a X-MS-Exchange-SLBlob-MailProps: q+fD6XS3/UL5of3Fna0zoENiR+FBTuR3+yzugfzD3hakRxjiPlpZ5eLeJdLnZmGow9qJOGudl9UikhsxEf67J0+YRk3kvJ6nz9+75SGu3TaH003hdmP6lldpNxM26pizkIuKkNBkDiBZfwJp0xGRdqGaaEX4OxFtV82yJYx2PeNsms7fiVe1Xda66dBkCKEEuRSKjqU53hBaBINp5rC313vqxkeY+D2pJygK0gfZ6s1nQqL1WxmYMX0TMIROYKg71UXucrCp0I7KKVE+GUr8VKWMxnPxzl83HgNXWs4fUSGELxywibEZAtMcWkFwQwidgwEpXZgi51U8Zm8p5B7S1VN0MUpzvhuP22XBIZKAhVSNtWgp8YVi4byEO+xSP8gdbAmgbZue8hEgxb5HFTqWbfVrEDfgoZS9xHckKrj+7UBq1sqXjbP7OyXN5Hdzsh6bT9Dgo1XuOtXoDjEBVpszM/EEg8swYgfLrlrkaJPWsBTNMiiEB6FW2MtfYUI4L59YUPWXpxHssc8z/74cqfp70yFPISe5Y4vxeJ0PPAriVJFfE/XH6jrdWf18uLmexDOq0IigozNjDD/4P13wWvdF/SrMeChp2mP979MfdkWTkXKZJumMLvaRNVb07DI7A0kyl6NXmqPPP6ipvSB3q0yxjhiby3zfAvQLtpMwQzU3dqPCSogOoDSwQKOTVBYJKsHw0iMgGPbOWHhpdHRZZM0WjQ== X-MS-TrafficTypeDiagnostic: HE1EUR02HT154: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: YSTvbR5fPhf4FGCuux4Y394fRa9b3ZUdrc+XXXy2Tx90ilf17ldT6Pw5iONHSkRi5JGQNw55O49md2vYKlSTQEyStx5fKfM2WicC+9EKAqr2+Uk7Ggzsx0ZwvvSEAGD7dVx6JVNSxx5uODyXUEO7TUwYvndiVhCT8mD+jUCnzw1iuP7aN3xWXv9uucmMxnXH3pFwAKarfI5w+sLRz9VjJr55iB9t9lCMQjR1N7yyRjk5pgtWRwVk99RSN07GTCITj18tpJDuEc6nE9rs5zI6TBiQIYVHJAQ+XoRMuhFo5Y+V4CyRwzMEc3VyIBa9hyFPDrH/ZxzXPELzXhBW+A9IJzXGPCV8rhAbwKEJBlRC5Ndet6zcSUX0kzDhjoQX6OolwOF9+rG1mLOuUKQXQ5QATg== X-MS-Exchange-AntiSpam-MessageData: llFYp+PQ5WFMZl9QOAE7854U5+QVanzFlLQL8EV/ZqGhyouAiFUkdG+e8JV1tIILJTrfAzQWsbZvX4Kgz4nCikDVYE28WdE/4tPNjvVLU5+UullIA4j1vswbpUx0NpnrZzIIkSPsYTAM5QZqlOu2wQ== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3bc4db29-e928-46e6-1eab-08d902d7c03a X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Apr 2021 02:06:31.7663 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR02FT005.eop-EUR02.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR02HT154 Subject: [FFmpeg-devel] [PATCH 5/7] avcodec/avcodec: Store whether AVCodec->close needs to be called 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: 3NzboB0psNdj Content-Length: 4371 Right now all AVCodecContexts except those using frame-threaded decoding call the codec's init function and expect its close function to be called. In order to make sure that the close function is not called for frame-threaded decoding ff_frame_thread_free() resets AVCodecContext.codec (and because of this it has to free the private AVOptions of the main AVCodecContext itself). This is not obvious and potentially fragile. Instead add a field to AVCodecInternal that indicates whether close should be called for this AVCodecContext. It is always zero when using frame-threaded decoding, so that resetting the codec is no longer necessary and has been removed. Signed-off-by: Andreas Rheinhardt --- libavcodec/avcodec.c | 23 +++++++++++------------ libavcodec/internal.h | 6 ++++++ libavcodec/pthread_frame.c | 4 ---- 3 files changed, 17 insertions(+), 16 deletions(-) diff --git a/libavcodec/avcodec.c b/libavcodec/avcodec.c index 6cff596f6a..c7a8001608 100644 --- a/libavcodec/avcodec.c +++ b/libavcodec/avcodec.c @@ -142,7 +142,6 @@ static int64_t get_bit_rate(AVCodecContext *ctx) int attribute_align_arg avcodec_open2(AVCodecContext *avctx, const AVCodec *codec, AVDictionary **options) { int ret = 0; - int codec_init_ok = 0; AVDictionary *tmp = NULL; AVCodecInternal *avci; @@ -336,14 +335,16 @@ int attribute_align_arg avcodec_open2(AVCodecContext *avctx, const AVCodec *code if (!HAVE_THREADS && !(codec->caps_internal & FF_CODEC_CAP_AUTO_THREADS)) avctx->thread_count = 1; - if ( avctx->codec->init && (!(avctx->active_thread_type&FF_THREAD_FRAME) - || avci->frame_thread_encoder)) { - ret = avctx->codec->init(avctx); - if (ret < 0) { - codec_init_ok = -1; - goto free_and_end; + if (!(avctx->active_thread_type & FF_THREAD_FRAME) || + avci->frame_thread_encoder) { + if (avctx->codec->init) { + ret = avctx->codec->init(avctx); + if (ret < 0) { + avci->needs_close = avctx->codec->caps_internal & FF_CODEC_CAP_INIT_CLEANUP; + goto free_and_end; + } } - codec_init_ok = 1; + avci->needs_close = 1; } ret=0; @@ -394,9 +395,7 @@ end: return ret; free_and_end: - if (avctx->codec && avctx->codec->close && - (codec_init_ok > 0 || (codec_init_ok < 0 && - avctx->codec->caps_internal & FF_CODEC_CAP_INIT_CLEANUP))) + if (avci->needs_close && avctx->codec->close) avctx->codec->close(avctx); if (CONFIG_FRAME_THREAD_ENCODER && avci->frame_thread_encoder) @@ -539,7 +538,7 @@ av_cold int avcodec_close(AVCodecContext *avctx) } if (HAVE_THREADS && avci->thread_ctx) ff_thread_free(avctx); - if (avctx->codec && avctx->codec->close) + if (avci->needs_close && avctx->codec->close) avctx->codec->close(avctx); avci->byte_buffer_size = 0; av_freep(&avci->byte_buffer); diff --git a/libavcodec/internal.h b/libavcodec/internal.h index b57b996816..85d52dda07 100644 --- a/libavcodec/internal.h +++ b/libavcodec/internal.h @@ -164,6 +164,12 @@ typedef struct AVCodecInternal { EncodeSimpleContext es; + /** + * If this is set, then AVCodec->close (if existing) needs to be called + * for the parent AVCodecContext. + */ + int needs_close; + /** * Number of audio samples to skip at the start of the next decoded frame */ diff --git a/libavcodec/pthread_frame.c b/libavcodec/pthread_frame.c index ae5b000d97..250b0068ab 100644 --- a/libavcodec/pthread_frame.c +++ b/libavcodec/pthread_frame.c @@ -806,10 +806,6 @@ void ff_frame_thread_free(AVCodecContext *avctx, int thread_count) free_pthread(fctx, thread_ctx_offsets); av_freep(&avctx->internal->thread_ctx); - - if (avctx->priv_data && avctx->codec && avctx->codec->priv_class) - av_opt_free(avctx->priv_data); - avctx->codec = NULL; } static av_cold int init_thread(PerThreadContext *p, int *threads_to_free, From patchwork Mon Apr 19 02:06:13 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 26963 Delivered-To: andriy.gelman@gmail.com Received: by 2002:a25:49c5:0:0:0:0:0 with SMTP id w188csp684704yba; Sun, 18 Apr 2021 19:07:00 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzGIaJHavn1BU9M0QA7aTp7qLt4myxMZyU0Q/2/6/Ckwu9HSFZAzSif0xnpioTfaJet4iBj X-Received: by 2002:a05:6402:785:: with SMTP id d5mr1375174edy.134.1618798020092; Sun, 18 Apr 2021 19:07:00 -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 d17si10621773edj.284.2021.04.18.19.06.59; Sun, 18 Apr 2021 19:07:00 -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=HFZjoGt3; 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 2AF28680B61; Mon, 19 Apr 2021 05:06:41 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR02-VE1-obe.outbound.protection.outlook.com (mail-oln040092069032.outbound.protection.outlook.com [40.92.69.32]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 9C105680B72 for ; Mon, 19 Apr 2021 05:06:34 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cC4utgFgwO/e0uLff9zNFRia5RVvnDji7kUcWR3/G+z7YHSBsGJ4eblCwS0IxppEyB53i39RSQcNgGSFmj6pkGrLUfQAPvGedovdrQ63KuPn0Zy1qB+zlf4AV5z27usVQ4J5UdMThKxtX5ziozgDP0VeKp1UomP14QV1LsNHV9sPjYoN6mX68uZ3Q+1WRhlegfFHrqzb15vw6ZsZBKyuTbLEahwEIM9r3T8SW4g2yswLAMkAg7bQCKrgGiihDfAAYjpJ2yX2zzM5Mx3py3njbd8N/X8/S4EkS55juUHGxr/GLoXJEov/Mc9dbTCxJjYMgy32UciUJUaL/SGz6wjPHA== 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-SenderADCheck; bh=bVcjY6co4h5IkP0hJ40odn+fC1U1G72gYpqJflxRziQ=; b=RBiVIMLYgThzoXPrabuhNIyOJItDKdCAeg3P3891nNrOWjxPk70yke/wwokTjrNbMfgZfrOwAmCAL9cjVgzslsf66SbqzFbf/qng9uOZD9oskiuRaelawN7FW30ZOKmVmoH3JOJPJ5kzhhhom4BrX9bAcMG7QqN0tFQYX4Wmpm0Jbct/NiAc8dryMojHhKALZB+KvFl7yi3pWoi/DT7Peu4lQ1cqM4Z4eGPXd5Nf8+slwmafGdieWNeHnBOQFW5ch5lzHf7/ZMLxkH0YFbNxxF2YvdvAVNzyUalc0iiTIGMtunOZJS+jRBklPY65xFjTZn/BE2EvRGIo57JxrP/moQ== 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=bVcjY6co4h5IkP0hJ40odn+fC1U1G72gYpqJflxRziQ=; b=HFZjoGt3JKdnqhDoZwVDuLruQKpfWxlOisfqtVBnARy6apmMGlBZLPY8ErkiqPjNdOTOKooFpz8e67MRJHfCNIWOiwoONy0Y5bb2DJ9qlrd06tpgblzKfkIVi8SPFnr5K/13Ibp/i/AF4Q/9rx1pHkOCxwPJajOfj+TTC2IqitLWj0TFI8z72VJlJnGS0lLv/kaTaqyys0OuNldh9rb0ap5US7xtk4GbsbFkbyu74sTcLgaMLy784gy1sP/thHm9vqeIcTd/Kskq5LSvjIQlGbzUpIt5e+7FAZM6MmrwGPZR+kv9mX4Y+HlC8PZ+zZ6lS8hd4Vg4pI4bfqPf8Q7Rbw== Received: from HE1EUR02FT005.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1d::48) by HE1EUR02HT223.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1d::184) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16; Mon, 19 Apr 2021 02:06:33 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e1d::41) by HE1EUR02FT005.mail.protection.outlook.com (2a01:111:e400:7e1d::99) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16 via Frontend Transport; Mon, 19 Apr 2021 02:06:33 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:4840C14E28DD472D904F7BE97A3E2A9E7972166EEC650DEDA455BFFA5FAABD95; UpperCasedChecksum:70D18CF27E7AEBEF15CE1F54F148B8FF4A25B7A7E674B6B6A86242BCF89344C7; SizeAsReceived:7597; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::45bb:c44f:2b75:23b7]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::45bb:c44f:2b75:23b7%5]) with mapi id 15.20.4042.024; Mon, 19 Apr 2021 02:06:33 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Mon, 19 Apr 2021 04:06:13 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [HL/ESh11LFq/l+nWltgWSzjxhGake7+e] X-ClientProxiedBy: AM4PR0501CA0051.eurprd05.prod.outlook.com (2603:10a6:200:68::19) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210419020614.92961-5-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.137.96) by AM4PR0501CA0051.eurprd05.prod.outlook.com (2603:10a6:200:68::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.19 via Frontend Transport; Mon, 19 Apr 2021 02:06:32 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 6354c7eb-34a5-4f59-bed0-08d902d7c130 X-MS-Exchange-SLBlob-MailProps: q+fD6XS3/UL5of3Fna0zoENiR+FBTuR3hoy8konuS+d5XzaBeLhtEyELhrR928bDosVKq3ZRLT4q7VAzpJ2XTfcFHnndsys1YMYm1GkrFc/Re3TdF50uYroE5jHQPqIFtm8Vfvxtncw26ikGX69I8yvV16uY8AxxmeCTt1KjWhjvXukTFdgJg2Z5NTvi9l7sD89V3lSU86JcRJBuiFPXpTSKdlvU72Eu7Kc+96uRD1u432B5bKbHrLvph7r08YbdFdoJAXGWVoNemyz5OpHXVdPoLQ0tKPsGFjQkfIRx34n+/suYM5GxGfr9/iihjvr31BwB3fWEqRY79avJr87GLBXZHEuVSir8kLfFNv+xIzul8Ff2EY8AcJTz2ZxVkJmE+2uotqXlIzkc3QmCfpIzA1wcQqZjXNyRXfmxzdaBteEqjFhzEthBXFXA1ILYpuQPB6e4Rt/1yrHYp7SHI65VOQAj4y6nj0c71PSO0AqIggaMHaxJbdwlIbzMXX/mgtqbPrxkdOc5mmBCUDaN8d6dH/DlmNE6u6Xx+LDoxnUbHbLuJoSUzEFBnNb+bDl4BhGTkd2RBmYeLF5hixwkd6tvDAVdW0O77Q5ZE4x2pNFuCVFDYlsq7pzCJ1+jiPSvmH/Q5j1VMctVKUuyejRY6ZKUd9ogInK7e7UBzVkSlSF9VOL3QJ5oei5rE2UVkMzZRJH0nv/dSz2EBQMXWRjmC7qfrQ== X-MS-TrafficTypeDiagnostic: HE1EUR02HT223: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 3BKmjXSerRkrjra2BWykRFAFjze9nSz8SYhK+Py+DnRvTwYvrgfg34sCl7Ndejl55t8s2KDraTHxORCh9zZIypGpWkCer66b3Nk3QQGuY/V+QzkQcEIClL77KP057yziBbvRpSt3XHGu3pPvPyuMpIWRs0zJaU+YsYp2z47OvtbY5n+adpwvUhhquf401NM8SEbhZppx/KIW+CEEj017ezkBoSn/df7T8Mzx9daSNxWxE1SLEFPRCpOSJP7g1ws+68D4Cn3KBWDqfvVAkOQq0c2UunNxeihsphlBXy7LMBf9Edy6m7NFU30FAuWLvVfR6kQI6x2V0A4MLsi7tza1hRSeUf0iv2bd8lr0vxPbAgYRNJCUD6P5QzbaBY9+RrigAh7+jX14MWJE6n0EBec3uQ== X-MS-Exchange-AntiSpam-MessageData: qj+tOFAWDltTmHht0IJzSD9e+hQahKVl6bKopXS62zbpTrqM0RnYTl+m8cYKR5qkqzHkJ7RRvAdetXPJhgIoCGdVv91SNre5axeD+iH6aeU6VSnOsb+ftNg2DIoXW4XHtB3T4ePX1TTjwFcqhjD7lQ== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6354c7eb-34a5-4f59-bed0-08d902d7c130 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Apr 2021 02:06:33.4186 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR02FT005.eop-EUR02.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR02HT223 Subject: [FFmpeg-devel] [PATCH 6/7] avcodec/avcodec: Use avcodec_close() on avcodec_open2() failure 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: /9X4JaSIcBsq Content-Length: 3509 Compared to the earlier behaviour the following changes: a) AVCodecInternal.byte_buffer is freed. b) The last_pkt_props FIFO is emptied before freeing it. c) If set AVCodecContext.hwaccel is uninitialized and its private data is freed; hw_frames_ctx and hw_device_ctx are also unreferenced. d) coded_side_data is freed. e) active_thread_type is reset. a), b), d) should be no-ops as the buffer/fifo should be empty and no coded_side_data should exist at any point of avcodec_open2(). e) is obviously not bad. c) is in accordance with the documentation of hw_(frames|device)_ctx which states that libacodec takes over ownership of these references. At least in the case of VC-1 it is possible for the hw acceleration to be set during init and in this case freeing it actually fixes a memleak. Signed-off-by: Andreas Rheinhardt --- The VC-1 decoder actually does not want to init hardware acceleration in its init function; it just wants to initialize some static data during its init function for safety. It actually needs only very few of the static tables that are initialized during init; its initialization could easily be factored out. libavcodec/avcodec.c | 46 ++------------------------------------------ 1 file changed, 2 insertions(+), 44 deletions(-) diff --git a/libavcodec/avcodec.c b/libavcodec/avcodec.c index c7a8001608..b054303afd 100644 --- a/libavcodec/avcodec.c +++ b/libavcodec/avcodec.c @@ -395,51 +395,8 @@ end: return ret; free_and_end: - if (avci->needs_close && avctx->codec->close) - avctx->codec->close(avctx); - - if (CONFIG_FRAME_THREAD_ENCODER && avci->frame_thread_encoder) - ff_frame_thread_encoder_free(avctx); - if (HAVE_THREADS && avci->thread_ctx) - ff_thread_free(avctx); - - if (codec->priv_class && avctx->priv_data) - av_opt_free(avctx->priv_data); - av_opt_free(avctx); - - if (av_codec_is_encoder(avctx->codec)) { -#if FF_API_CODED_FRAME -FF_DISABLE_DEPRECATION_WARNINGS - av_frame_free(&avctx->coded_frame); -FF_ENABLE_DEPRECATION_WARNINGS -#endif - av_freep(&avctx->extradata); - avctx->extradata_size = 0; - } - + avcodec_close(avctx); av_dict_free(&tmp); - av_freep(&avctx->priv_data); - if (av_codec_is_decoder(avctx->codec)) - av_freep(&avctx->subtitle_header); - -#if FF_API_OLD_ENCDEC - av_frame_free(&avci->to_free); - av_frame_free(&avci->compat_decode_frame); - av_packet_free(&avci->compat_encode_packet); -#endif - av_frame_free(&avci->buffer_frame); - av_packet_free(&avci->buffer_pkt); - av_packet_free(&avci->last_pkt_props); - av_fifo_freep(&avci->pkt_props); - - av_packet_free(&avci->ds.in_pkt); - av_frame_free(&avci->es.in_frame); - av_bsf_free(&avci->bsf); - - av_buffer_unref(&avci->pool); - av_freep(&avci); - avctx->internal = NULL; - avctx->codec = NULL; goto end; } @@ -586,6 +543,7 @@ av_cold int avcodec_close(AVCodecContext *avctx) av_freep(&avctx->priv_data); if (av_codec_is_encoder(avctx->codec)) { av_freep(&avctx->extradata); + avctx->extradata_size = 0; #if FF_API_CODED_FRAME FF_DISABLE_DEPRECATION_WARNINGS av_frame_free(&avctx->coded_frame); From patchwork Mon Apr 19 02:06:14 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 26982 Delivered-To: andriy.gelman@gmail.com Received: by 2002:a25:49c5:0:0:0:0:0 with SMTP id w188csp684887yba; Sun, 18 Apr 2021 19:07:20 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwrCFL1BNW9LAPjqLYxlC/UgwepZqnufMFlkcd1K6/MhQCewkM/Tp0gfrDf93bMDwNtgSz2 X-Received: by 2002:aa7:cc98:: with SMTP id p24mr22807144edt.187.1618798039988; Sun, 18 Apr 2021 19:07: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 bc26si11257207edb.270.2021.04.18.19.07.19; Sun, 18 Apr 2021 19:07: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=RyoCbcza; 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 0F4ED680BF9; Mon, 19 Apr 2021 05:06:43 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR02-VE1-obe.outbound.protection.outlook.com (mail-oln040092069040.outbound.protection.outlook.com [40.92.69.40]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 98091680AF3 for ; Mon, 19 Apr 2021 05:06:36 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Hd3XQTNnenYJwIZR3gn/romiotOWgJQlmyQRe4FrA0Bqax3i0gVRw2ftFdjlzRCgGu4t+Q/V9gor79jMYYVKnX02E7CduAHimnNFzq+6y3jTEROEUubelrDXPgg//hSiLx4ntOnawlhCjdr4bHLvQkOSxsp0TPXU4Dvbwz8EgA6A0QeNuhryR8j4XkULa9ZENdT/nFU3JJBrDKf0qfxgdd103FLqfrIFFnqODgZICBTJzEFsTVK6P2B3xtuv4aC+TTnol51XCKRaL3bBKOCa6Gc7BsewYi5eLNiWWlvz2CExrCrMECXxM3KwkTup9+E7JCVTyQSdzl9CrPQGWZXAfQ== 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-SenderADCheck; bh=puy6Tjl/8475uE5KZeiUi6CwtboirzPu0gsCZ7y9O6U=; b=b/Jneq8Ew1BfhQiDzLoPT8wfvjxYSkTLJT4P/n+exF3ThAu0BCotUxQjcY8dvxTVPLz+UQPTGt0RJoSpoKDF9LLS/gzXcbSF0jw0N6ZAkXL/6yDaepuS8iEQvSlKb3ZzK1FsSTr/z/0m1sSflYHKE+YxhRjcQYlkbwqeZZ7ohGqpdaSSyW+/WXQJc+1tDhpISJnIdWZ0vMuhKG14H8acIVLbr+eX3+mvbjcjI9Yn5s3IeXShYqg32GLaZMZTDpVw5tIdN5ty6JgW4u1qlsaZtmX5QTXEW3EyOO93R3to8owv68N41wNky9XhbSm6D8vvb0tajJOdYZAlOSqf22C8TA== 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=puy6Tjl/8475uE5KZeiUi6CwtboirzPu0gsCZ7y9O6U=; b=RyoCbczafD7O4NNl+xEHxbrzEH3yUBLyteLk1u4exfkopTuSXnusduciF+hAJvgb0WxjuWAijBPuiqRR6QfZQs1TXQQXrDmY5f51SfyoEPcMpqcCPox2HbMSu4ecI4wwsKFHnNXuwVzUd2XhxPRjZcVmLiEtdwClfWfbRK6HUUdSDfS8INbfbRyKghgCK+A3YflGKtVlm093GkpHcLTUIx1xzP6ODGurD2lM0pkQJTK1+lRhbWr0/p7b4cg++Qk617THtu25Z0J4ER2yV5V8s5l/lQ2uASputIrmkhBMc90A/Yte0jCSa4wVLpYne7B4Vw5jszM5566LCEtoQ7HXxA== Received: from HE1EUR02FT005.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1d::47) by HE1EUR02HT222.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1d::306) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16; Mon, 19 Apr 2021 02:06:35 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e1d::41) by HE1EUR02FT005.mail.protection.outlook.com (2a01:111:e400:7e1d::99) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16 via Frontend Transport; Mon, 19 Apr 2021 02:06:35 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:09AD3525C3BE9B8EA478DDC38395AFAEAAE23A603708227AA303D50DC7DEE6AC; UpperCasedChecksum:38ABAFDDC11362F0077E97D5717444DD8C79C6A550477A085A70C1F9A5DA115E; SizeAsReceived:7602; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::45bb:c44f:2b75:23b7]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::45bb:c44f:2b75:23b7%5]) with mapi id 15.20.4042.024; Mon, 19 Apr 2021 02:06:35 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Mon, 19 Apr 2021 04:06:14 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [vM0q5m/fPiNFSOtKj2T4FKEOkGKiLjWr] X-ClientProxiedBy: AM4PR0501CA0051.eurprd05.prod.outlook.com (2603:10a6:200:68::19) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210419020614.92961-6-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.137.96) by AM4PR0501CA0051.eurprd05.prod.outlook.com (2603:10a6:200:68::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.19 via Frontend Transport; Mon, 19 Apr 2021 02:06:34 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 52139361-2349-49b1-9a0a-08d902d7c253 X-MS-Exchange-SLBlob-MailProps: q+fD6XS3/UL5of3Fna0zoENiR+FBTuR3DsHAaInVGIEJF3pgl6UJynihVs/GMaOFXD/ppUMqvyx15xzng0gclHu2xrEDMUfMwSsJ3dcnMZftRtxVkKOu7zAFgSVSyXr7H2vlJKEUGtl2yo6L3OlTvat/2N8mQp5MR24dzUDj5Ccn3ngo1QJCGgFTyeJJ3ycM+2TGsCwemhiue3qklLPxgtk10Uqrwmn6ztxu/JkdCwQgks97xtUbqiBGFOOPLJoClvSm48z+JOMA0iibfSvqd7s8hsEpoVhkqeWLbjVbr3X58GjzzYfOaZsjiboK+4tA8mOjKgp9P4oYHj7x6LdT4F9rrQgTGyo516AOjv2+6Fup1TS1QSzBJtXkvqvHyUaRyzGmIMyiirxigbaTeq0xObjlvQ77/twUIO03ltnkkRVP+rzsgWwLcAXuflttlRNvXs1JqW5/yPoJyOsrH/h6P7XwQNRirPAiJoIDjdk4It7bJ0AJZK7J90mFkaS2EmtYAwR82KHEF7jZjM/ymNxSWqQsi5fiOeRMqdE84tQNvuEw6vCqN/umwhHKNHWokSrSrsABNdHTIHz3YYLOPHcVGhklBiNcs8bE5RxVa53se0viBBCzAM96Zmhy/zEpo+x/Ty4u8qNmtsINFPJnfNmSVCq0bF3t2GBCCabEHDGExh9m4jh7vp4Wpho8DhYwA9kT1+2MBYQxGEBuBfw4oQIDqA== X-MS-TrafficTypeDiagnostic: HE1EUR02HT222: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 5TmywZQrJZMsvZwpfBsvEn4cR2Viyo/PUGUt3/b13rEwFqj596Zp75E1LZFzh4uPbiktNNYmWlnFV6BbmYT/P77/Hbrdg0P1YUlGWJFzl/ZzczHnNb+98Ah05WhyeFtwwiK+IiCFzK3udPkLB9LIyPA7OqzjuUJpq5BpY8k6kj6JwLyQQZL+6kCVrRpngDa5/IPMgpkKeAwI1RXWfNGOxGdaS60SqLclMDkrBKj3nIg5jff4esKgPRPlxsQ8xCJEVtktlMMNkFNaqvZD30OzUpZk8Wsctl+Kakrj/XlLpzZg0fR/6b50dV7Wre/T6LsmdUdcBPVKYbzvXGz4Ip2yKHDiwDpQGLndo5UxubKRIM6eEwC+r/J486AaADC/dE0DGMtpKEk5YQvXMbwBeQvr7Q== X-MS-Exchange-AntiSpam-MessageData: GjRcuxXUM00acbHZDJz2YlqphDWYHzL3GboEHltgvVNGp3LSQEDiwS9q4nfNKPkYqLfLq155noutRfK2P+F9hftE/UlcoUMEabeijKdJKK/gObj2UAf+5ABRnPjlN0b3DpHW0P2OBl7BKOR0brr/Xw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 52139361-2349-49b1-9a0a-08d902d7c253 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Apr 2021 02:06:35.3237 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR02FT005.eop-EUR02.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR02HT222 Subject: [FFmpeg-devel] [PATCH 7/7] avcodec/exr: Return correct error code on allocation failure 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: /IigZtaKtT+U Content-Length: 883 Signed-off-by: Andreas Rheinhardt --- libavcodec/exr.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/exr.c b/libavcodec/exr.c index 49c4774145..4f55609b0c 100644 --- a/libavcodec/exr.c +++ b/libavcodec/exr.c @@ -2245,7 +2245,7 @@ static av_cold int decode_init(AVCodecContext *avctx) // allocate thread data, used for non EXR_RAW compression types s->thread_data = av_mallocz_array(avctx->thread_count, sizeof(EXRThreadData)); if (!s->thread_data) - return AVERROR_INVALIDDATA; + return AVERROR(ENOMEM); return 0; } From patchwork Sat Apr 24 12:29: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: 27270 Delivered-To: andriy.gelman@gmail.com Received: by 2002:a25:49c5:0:0:0:0:0 with SMTP id w188csp2084445yba; Sat, 24 Apr 2021 05:44:10 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxSwNsyKfhHGNGaaxgvL6l1tR+C6zoAcRQK1Qh3217DdbvGEEuPBVbsiXdJuv/VgQN9+ezS X-Received: by 2002:a17:907:ea7:: with SMTP id ho39mr9054584ejc.315.1619268250543; Sat, 24 Apr 2021 05:44: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 d9si7761035edv.176.2021.04.24.05.44.09; Sat, 24 Apr 2021 05:44: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="u4Vcl/nf"; 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 4C5C8689EBD; Sat, 24 Apr 2021 15:44:06 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-oln040092065070.outbound.protection.outlook.com [40.92.65.70]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 4E31E68825A for ; Sat, 24 Apr 2021 15:43:59 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YmLVo/awKtof2uFCY69+n4YmznvxLP+lihEkCw+BA/J7I/ksW2BUCcrCNByOg5lO9CvEJpPovNeiPHtgAoHriJfh+s1vO6oCLBoUSZ9DeROVgugdqVlRnP6ch+gP5rRy5d6HEInf2xv9BgYj/OKFCIybEonOS9QhrH22vBjwoBvenT+ICVQlqszx1HnlCNjCf0KZZFEVetbTaus/b1KrL7KBMirgiZ4EIdXzE2fXuj3drCc2M6iP5ebaQlguZPlO36AIr26y8TF4kVaa2PvJDoxpmELUNwKBlciQ8S6lEtZpn1IC2SjVJyVCuGfyQ7olHN0xG6t7ZsCyzA9IYhn58Q== 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-SenderADCheck; bh=pg/XalIIlRQB2SZ5P5fw2lCzeR5h5WY3hfBPb7jGaLw=; b=Nklb64Ky/0qzWsZlwMtNDKW8AbZf5zwso2BgydnWinQJYrXOoEU+xSyHcLiXXhBDSiQFmOFDhFn1Dpu9Qe1LrFCGCob+ylUG7QDbLbWnXG3xhSPPtOQnQwy7YutV1PeQ9gYmzQtjTr7dc7YX2uIvVdwPAVRRHWS1f2gUlUNkAVZ9FO/CJdTqNwAcpUlpnKAT+cNSOSzMyOWrK9Z+4t3dsXyxGNzBz7FD1CGUCW0wxkM/kL2iGYQpOlaULjVWuSGD2cO3pCHe5wJX6G6WZfIw8nsOR0BNDIdxN7zda7kXlV3l0O9HvYDrdJgA/SgJClqWmmyZKSGrFM3VvQYfb+bJ/w== 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=pg/XalIIlRQB2SZ5P5fw2lCzeR5h5WY3hfBPb7jGaLw=; b=u4Vcl/nfRL5xAErg3y6V67tXz+5KgBJVQfRSnGMLdD3PfK9hLh72OakNLxqyVDrq/uJl4oP6gI+K96alZmxIO4tr44qBqg8WQopCbeln2F6dXbXR+qEWr0Z7gMxzTJR+rB3Y82ypBqFGXCmibPkIDtg5kQ20lcuEA50RxEKd+EPVQf+uf4iAntZ3WKg8djUi6AxQnXwGRrq96A6mYiFfQgW+gqBYl0A7r5YJcUAi9ZH40LwPc2ZpHpUj6+0g3OsA+cYcG2KEy3iOfYlIzF3+sGBRFd1DJZ3OT7phs/H+afJ4K5FZDEEnf8NhnMtmCeHwvF2YSjSMsp/SuwTtrBDfbQ== Received: from DB5EUR01FT004.eop-EUR01.prod.protection.outlook.com (2a01:111:e400:7e1a::51) by DB5EUR01HT096.eop-EUR01.prod.protection.outlook.com (2a01:111:e400:7e1a::431) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.21; Sat, 24 Apr 2021 12:29:50 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e1a::41) by DB5EUR01FT004.mail.protection.outlook.com (2a01:111:e400:7e1a::112) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.21 via Frontend Transport; Sat, 24 Apr 2021 12:29:50 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:0D58FFCC6FF136FE63B7FD981632500BE4A188BE80AD3982C0C647BA00565E27; UpperCasedChecksum:1770BE06AB2FD51908B489E6734DCAAE4685672DB80D9E634AA0EE38AC4984E8; SizeAsReceived:7594; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::45bb:c44f:2b75:23b7]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::45bb:c44f:2b75:23b7%5]) with mapi id 15.20.4065.025; Sat, 24 Apr 2021 12:29:32 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Sat, 24 Apr 2021 14:29:24 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [uHf2PZDb11OJj11Vqeb82tTAQ0tFpZxv] X-ClientProxiedBy: ZR0P278CA0070.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:21::21) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210424122924.113829-1-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.193.248.86) by ZR0P278CA0070.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:21::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.21 via Frontend Transport; Sat, 24 Apr 2021 12:29:32 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 9dc25e23-f076-4dc0-15a7-08d9071c9cfe X-MS-Exchange-SLBlob-MailProps: q+fD6XS3/UL2UDcFXhKBVDdW3S05RF0ZfNqlT0k8T0086TE41PqY77rSdmXQHATQUAUhLbk0QIfWKKhmlJ+OiadSDi0zsxYVVnLWZ6cUNLLqzFuNan4fC2q/Hfq+3LxE4pWk2R/YmRO0pWtInVGSy+zNggMZwt4kkd7RXEQ+6I83j5QrTAe3eQuekgG1Z139WQggsOsvR0vyEuhWqqX42uTvGBGguqbjRNCKwmZSJo3iOH25m/0aC+piot0lA60zNSTAd6bQWFqvvGA2lvClIAsiUK31gXJymY75ITxM0cKNIB2rRUcVnMjTV/m2yC1K8Fakx2XgSVnLpP8sNraoOTzgtj3wJ2hMYV1do6msGxBqbJPPcVOIIIF7SO0JzItlgIWETLxBEZmUqfcz/za/qiWFVWJfJ163YhnImDzA42/rbFbc+TCzf2dipPU/DdTIdBoEZOW5liHdmFat2auSRV0LLrKkr1f30+TpYJ7dJjChfuPjLxeerv8DJpwzi2NsEOfithChut8WlkROm3MmwutuMbAu+NZf0e9md8qQy0tGvzmql9c3wEmDAQLx3jS7zrYBtXid5gw/XACaBsN90plu4SHZNX9x3AdVRHbP4GGXVsasxaBX3zX+Et/iUFwn8SeJcMHDJVgTEZgDXhfQDzdwVZESZCFd735T/TuAzFbbBOjZsbtxDBeJ1XB4wSDkJvTLq5tNMVfkZMwS74GzHw== X-MS-TrafficTypeDiagnostic: DB5EUR01HT096: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 0KemdYs+1uDvSW0nt3ewyzgnQDew8zXFGt80i+/VCnReSItCy5gYNSbXkiOFN8h1wjxtybW5JgGNnWnJWdxB5Zj+AtauaCPGG6PQiql3ZWmh7mq9rVVDVF96lu2NVr9a4MhiOqy8NQW4frakWqXJ+tcmR0+wlrNp1JEZJ3RSsLUIFUXzIDCvVf6DkmqtQ64jI1MEKtgbMPsqcyXeWHb01n4qRsYVCdt9YNjnALsEcJRRlacAGT9KPjNawZDag4cifZMvjGOq6fpjebehvV3dx38AgryrCIYvW+sfOizSvgV5I5wsUrwheqtxT2sW6rTMQEJosUpVcWgyYUpqIjShbTgavi6Tu8rBf6A2Y19aW/XTTrWIScHUM+PPa/ufVdnspir/YvlhiJUtcXCDa7ldMg== X-MS-Exchange-AntiSpam-MessageData: 02lpLIHzudGaLljL/wfGZFJzioAIGTmLZ27rv20O1XzRWMQlvgoCOJYt6ysuw4Gn46C/rxdtWe1wr5bvwSFkeaAkiN4wgxKs93AK+qH4tNbQ6w0UA6fCNwulXD7I5Ll6hfV86Qk3PSBsPDm9Uc9mcg== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9dc25e23-f076-4dc0-15a7-08d9071c9cfe X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Apr 2021 12:29:32.7000 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: DB5EUR01FT004.eop-EUR01.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5EUR01HT096 Subject: [FFmpeg-devel] [PATCH 8/8] avcodec/avcodec: Document current behaviour for extradata 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: /2d1dlpqzVQA Content-Length: 1560 Despite the documentation saying that it is not freed by libavcodec for a decoder, avcodec_free_context() does so and has been doing so since this function has been added more than seven years ago. Honouring the current documentation in avcodec_free_context() would add memleaks to all users of it that don't free their extradata manually; given how long this behaviour has been around we can safely assume that these are many (i.e. the fftools are among them, as is libavformat as well as parts of libavcodec itself). Therefore adapt the documentation to match actual behaviour. This fixes ticket #5027. Signed-off-by: Andreas Rheinhardt --- libavcodec/avcodec.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h index b9b487be41..4596d12647 100644 --- a/libavcodec/avcodec.h +++ b/libavcodec/avcodec.h @@ -633,6 +633,8 @@ typedef struct AVCodecContext { * Must be allocated with the av_malloc() family of functions. * - encoding: Set/allocated/freed by libavcodec. * - decoding: Set/allocated/freed by user. + * Additionally, avcodec_free_context() frees it regardless of whether + * the context is used for encoding or not. */ uint8_t *extradata; int extradata_size;