From patchwork Tue Jun 15 23:32:06 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28341 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp4311557iol; Tue, 15 Jun 2021 16:35:22 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyii+b4cE+IQK3T4cdHz9AL7VBxr+0vhr9Dzq/TW/gJjWo9jqtgARFGxBMJMJJUz2HoX/Du X-Received: by 2002:a17:906:7fc5:: with SMTP id r5mr2133547ejs.474.1623800122127; Tue, 15 Jun 2021 16:35:22 -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 v9si269551edc.545.2021.06.15.16.35.21; Tue, 15 Jun 2021 16:35:22 -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="bjBp3P/V"; 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 CDA95689ABD; Wed, 16 Jun 2021 02:33:29 +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-vi1eur05olkn2072.outbound.protection.outlook.com [40.92.90.72]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id B372968998C for ; Wed, 16 Jun 2021 02:33:25 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NbBzTqWNrWROnspw9oxb/FPEoVzvQlXo9AAa9AqoaPgDwPr9N1mhO+Iw1cvEXf8LLjgaYDdUdC/Au2P4uDjshWfQXHU7t4N+6P7xaE8NXwYaZQpp66hVPrq3LtVqRo6Gw3N/B7/bLUvCvEVrRESvk/gS1BI/IrncmGiweGz6xhs/koFNtrGwftDRDxVhMAef1ne10bSlEWcPI/khUOJkgqAaiDtlctBG+uhheOSalEUq5pJmwLuI11klLJnuuTw6aY6L7MNNovf+CMVE+aSlYb2zGkEIk4LhEiGdbrqCtTRId536XNEkuWxA6pX1X+N77jbbls4uScFB8nt791KvhA== 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=vnd34B45DyWii6l/4KICIplNREGegNfk76A7q80TBuI=; b=S5wWdTtON6enawagAEJKP3nEPpK7np6yDUugHtMgt3CJfe7UusMcrT7ghizWjo3riLb+mRVkYxtsBh5PDDXQp92UKZkCjXQdAyoA3MkJBgTrgALlz2strsG2ivZ4xsZBN1ymFCVRPk/wAi6x5rdf1wXi/9P7I8EansIEU+UfVIlDnRg8NrEDSuqiHpWccBsh3jvvoFHa2EYO9FRCKaCF51P+te6Qx4fQ0QXfodjh4ZeUWiD6jxY9seld8yfGI/GPnDzQ/kUPKme5J3b+tme8qXnHk2sSWp/w/9ol/XrsYw2VJ9I642jPM535XQamgQ7LRJmfQh3IgmLrW0hAPvpwHA== 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=vnd34B45DyWii6l/4KICIplNREGegNfk76A7q80TBuI=; b=bjBp3P/V7p6wSDiHxcW3zTqgaHZJLUsxANItE/UT4hWmKJzfdqgTrbkf/IsevpVff5FI4psSFA2opPE257y6TyDb8XwpXRk8bsSzCeIKwKr+949PtkIwSrAx+qL44o2lyq3IZdf2u+WJdYtZolOs1od62YmR+2v72xgVIIpBe4xYTJnii1jEThRuLaAPAYbLgI4+QSS/9r+16rvs281rKFeu7zAY1ewP1vGm6xt7YyZBo/lvPG3tsEOYlsi7bnB+UBP1Xxtvn5G9KayliWnwPbmTLjSfmoOCExa111hxGm6A+f3WTOc2h5wgerXxMq1pZSAO95KJOdmhFNzGU+1gOw== Received: from DB8EUR05FT045.eop-eur05.prod.protection.outlook.com (2a01:111:e400:fc0f::4b) by DB8EUR05HT166.eop-eur05.prod.protection.outlook.com (2a01:111:e400:fc0f::76) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4219.21; Tue, 15 Jun 2021 23:33:24 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:fc0f::46) by DB8EUR05FT045.mail.protection.outlook.com (2a01:111:e400:fc0f::383) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Tue, 15 Jun 2021 23:33:24 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:EDCA090571689719500E445EBA4909C4FA283D97FEA716F9F530994E0FA6DB39; UpperCasedChecksum:E98DF2E6C0D85E56DFBF287F8EF377B08450B25346DE3078CDC844130308EDD6; SizeAsReceived:7592; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::f4cc:63fc:9cef:37fb]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::f4cc:63fc:9cef:37fb%6]) with mapi id 15.20.4219.025; Tue, 15 Jun 2021 23:33:24 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Wed, 16 Jun 2021 01:32:06 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [dqSH0eiRk/quoNxcJ3sNpG4Fs9k6SGkk] X-ClientProxiedBy: PR3P189CA0063.EURP189.PROD.OUTLOOK.COM (2603:10a6:102:b4::8) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210615233243.1173928-16-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by PR3P189CA0063.EURP189.PROD.OUTLOOK.COM (2603:10a6:102:b4::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4219.20 via Frontend Transport; Tue, 15 Jun 2021 23:33:23 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: fc103ac5-0eb2-41ac-8f3a-08d93055f7fc X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiR9SlwCHtPrt+MV8TUUwp4pQ3gFot+Jrk9mLI+N6jfyjMDyua2eyp8bVC8Z6JK7zCP4e2oWJFTMZGh6gKimDncaPJN68NBrm8ereyz8rCFNIqQuPSDYjnCqKInVB4K49x5QUIVDGlV1sDcwvXFL/5cYDEJzEEjOyTAV/0vK7GA22iG7tpBXrquv6+HFoDw/x9gLURZPA/HaefQzK5LFfZ2aKCtvzOyrKg00zZGjtBekfktW6HFw6WqGuPi7BOJOAM+/uPOyD2jamq2ilhH582RHH0dwUrTC1P8Mokm0VX+Hbc7u0xJP+3Ed7MGwGNrvun7jp4q4XLWEPdaTz6g8kd6hXlKOYZlEeZHJtOnn573xrDb77S51Q69prUltgaKBc6in5GHEFzzDp3j9JGdQoJScbjzNTJ00UTxpAgA+LytVEtOl6k2iEwiUa6p2fGntVRSmtxXcZy4mcR+6De7PyIfFVMqVqGFYmq0yDIlkPSlj9hYUTd0i9M4VbofxeX6mLj7Aw2V4w8j8G5hDsP/iXmO7TdYL7pXN7hOO9VgGmLgfBq19Zc8QiJLi+rDf8lgsg2Ga4YimMMbk0ilZfj/PEl9TSFLccnLpuVvHH1R0J/rruuS9zr5gB8jbCa6IHOYAFFtSvjT0+/v1IThbZzFrgxmJCk6HrxBuT00OOqI1czLuCxn1erLVc9WLSHyJz2izcZ+kAxcRD/9TjXpQadDBEu+qSKokiA/eZ5oP2U14yqdJmUiGRJ/mm3zjQ15rL6N+mNo= X-MS-TrafficTypeDiagnostic: DB8EUR05HT166: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 9j2u/hJmD1DH2O4EKQf+ItZ8N5kCMuCHhR98YfctV21O7YiNt//4u8pFhS+GsKX83UCHm2UtC2WA1+KzKoAtARu71nUlCtDk+klS+I/i8hxszDDgSN5+YTyz6gVy2P6j28KEENQJc3vSoyYSjQjiU31s9d8Kg//6NOt/OTn++XKD+EW/ERfgGUf5swg9ItE35Sh3mUR5LYTZHZP0AoHmLn174TZQSNbn+CTzGXAlZITT6tlo92eyA8iK5RdqMqVZtjLk5B1t79ho56e8dWMdEg3xPMcj7JuPc2vjUlhsoUP2voMeEZT7S6voISR2TlgvVDz0y6TUfZmv0oTMZ4JmLqaXrY0igis+5RzYqY1R+dQasWf3FYvfoEXCCX+YUCInMSo5va9t0nfEIRU7s/7VrQ== X-MS-Exchange-AntiSpam-MessageData: iST9XMpxi4O3BX2+txA5R7iviB59ld8BhqbHGJfuThIXQn1xFxgrz9K32mInamHXVW833ZNrggRiR2AVBd5y4P/qp8+vd9w9rmW6Yh9/35OY0pUY8hgH4J/HL+RuXZFHuuUQPZ4lf9JOHiEwB4sm6w== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: fc103ac5-0eb2-41ac-8f3a-08d93055f7fc X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2021 23:33:24.2722 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: DB8EUR05FT045.eop-eur05.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: DB8EUR05HT166 Subject: [FFmpeg-devel] [PATCH 17/54] avformat/jvdec: Simplify cleanup after read_header 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: zON3u4HZx6Fx by setting the FF_FMT_INIT_CLEANUP flag. Signed-off-by: Andreas Rheinhardt --- libavformat/jvdec.c | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/libavformat/jvdec.c b/libavformat/jvdec.c index 948cab37e5..a044f50831 100644 --- a/libavformat/jvdec.c +++ b/libavformat/jvdec.c @@ -113,10 +113,8 @@ static int read_header(AVFormatContext *s) return AVERROR(ENOMEM); jv->frames = av_malloc(ast->internal->nb_index_entries * sizeof(JVFrame)); - if (!jv->frames) { - av_freep(&ast->internal->index_entries); + if (!jv->frames) return AVERROR(ENOMEM); - } offset = 0x68 + ast->internal->nb_index_entries * 16; for (i = 0; i < ast->internal->nb_index_entries; i++) { AVIndexEntry *e = ast->internal->index_entries + i; @@ -136,12 +134,8 @@ static int read_header(AVFormatContext *s) e->size - jvf->audio_size - jvf->video_size - jvf->palette_size < 0) { - if (s->error_recognition & AV_EF_EXPLODE) { - read_close(s); - av_freep(&jv->frames); - av_freep(&ast->internal->index_entries); + if (s->error_recognition & AV_EF_EXPLODE) return AVERROR_INVALIDDATA; - } jvf->audio_size = jvf->video_size = jvf->palette_size = 0; @@ -258,6 +252,7 @@ const AVInputFormat ff_jv_demuxer = { .name = "jv", .long_name = NULL_IF_CONFIG_SMALL("Bitmap Brothers JV"), .priv_data_size = sizeof(JVDemuxContext), + .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = read_probe, .read_header = read_header, .read_packet = read_packet,