From patchwork Tue Jun 15 23:32:19 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28344 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp4312977iol; Tue, 15 Jun 2021 16:37:33 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwEu/gb0md1K8jgeDptkTHGvyykZC4p5bi6JT4S4183/Xq5KbNtLlPHy+nSqYhAITPKDb5b X-Received: by 2002:a17:906:7fc5:: with SMTP id r5mr2141545ejs.474.1623800253334; Tue, 15 Jun 2021 16:37:33 -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 v9si275321edc.545.2021.06.15.16.37.33; Tue, 15 Jun 2021 16:37:33 -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=NXYeipSI; 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 615306883BF; Wed, 16 Jun 2021 02:33:55 +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-am6eur05olkn2011.outbound.protection.outlook.com [40.92.91.11]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id EF217680454 for ; Wed, 16 Jun 2021 02:33:51 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cqzvsitvr2NdKPf9YNvMY2CtM8CogQNCofHdiofmVojiRefZS25RxnuinpAOCOywg6vyB96N86D7NthmH3E2S+7q2LmkeDf6xwTpiutx+g2gpD4DUPKdti4Kq/lrT/eQK0dkodenaqxRzSBfZn9IenMXKI+CRVRSXDepB6NJxYmmK3vWrM1RtFwdGO2aB9bfAIZ0nxjharY5oxroApy3u75Lmav9v/EF7YFFpCL6eeehm3waN4fgvFeZfxf+15cmGwVw9McUm6+i4ramP1nQu1F0B1eUVDTQM7Am07JWXl1DIDLAep71XR2PHQS/3GyW3L0qBM0NIvgDuljnom7TYQ== 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=RxsNh1ZQgzzYqqd9hfWhqYmrTxJbVVLJohaE4lcSxSs=; b=iYjhhHi5c5duElWPFxsyQEooySQv0kBXwaZBc147f24WLTNZuFPyZ8WsL82+frqRef+OQBnRV+TXYjMT99jp5sapoRpsbtfvW1tACShbqkzOWiaps3vmYh1Ycq3OvXLGhJWICs52mzLNlpvpzv78isTec3jPmQTU/lMtA8u84HPnCRs6f7Co5WGAn+sBh2F26u/zyPIbieLXtCb6Mz9ZTnltLFUc1EVNOQQi13W8UaFdNIMnAhqnz9i/K+ER7WW1LlioRR8LbYREP+HCLHWipE7oVgfSJcyeJEDIOYGG6fmhCdZSA6yoI26IHiy/PheGz49hEzOd/kUkVChNRKYeow== 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=RxsNh1ZQgzzYqqd9hfWhqYmrTxJbVVLJohaE4lcSxSs=; b=NXYeipSI2qLyw/EtYXp8Y3Ql7kwtuwe4ui2fBb7Gh3qqpr/L9WWUEMRpb2in9xvG4lzj6ZYrt+uBxrUAr2glSyUHtqnjB4UnZjTMJ/CtK4gSYkIpyKa3i2omYst2BiQugRJB1uqzZhfMkB1iju+klQ8W2pDp5vPxCvy7DcyNKEb9MstVHJIxpVzPOSREImamg4CFz4QLRJITCOw3zdZJI5SgQC4IcA/TTgMXEdLzDSWHX6GLUKRzmCoRbLxI/qGAILroOvKzGViE0DZJWga/Ic21w/I+BlGaRoy/XuJmnAzU1Q1QD16C6adIRhJ4fkSyKAclCj/PuDCcGUv5cJIXEw== Received: from DB8EUR05FT030.eop-eur05.prod.protection.outlook.com (2a01:111:e400:fc0f::49) by DB8EUR05HT222.eop-eur05.prod.protection.outlook.com (2a01:111:e400:fc0f::416) 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:51 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:fc0f::40) by DB8EUR05FT030.mail.protection.outlook.com (2a01:111:e400:fc0f::228) 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:51 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:0DE990E3ADCCA53E29AECA8B3B5535C9C25742EFA34DA0FB33DFBA29C0FEE953; UpperCasedChecksum:9F0A4D36D6A14AE580536312AF4C9E34D54398BE45B48BF0FDD2C63CB577D54F; SizeAsReceived:7593; 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:51 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Wed, 16 Jun 2021 01:32:19 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [MrZYhcXlcG7y0ivTWXepoK2SWPqaMr1/] 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-29-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:50 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: b8af448e-ba9a-4d4c-5742-08d9305607fc X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiR9SlwCHtPrt+MV8TUUwp4pWhkGqqrkWQJ/G2nBDhW1VlqXp5I54p9b7loWHOASiARZpLAABfZ/OlKQ654gE5X41iBPW6EwSi80RUlYfwCc2KJ9WcNmHwZ/Uc1nCcp04GnaPCiZ1hSVXXK7vFVpOBAhecFK4sWHaHN3S2+IpV23iAbL3nZWvwd0TGuZ1OvHgLns2iHy+fxZaZU32Y2NUr93gXdq1qyTEubMJS6H1zZ50eYwxFzpWygU13H/6qzqUPhfpdnTHX3tbDzXcS8lhg34Ke0U6uBlpWInnEbb8rXEBp1dgJGjsRyHBiCag1ckMy48mrMIGJEwkQINgnil926BJYX9oJcLkMcXL9OH3rA0hhaFVnso8U+kENSGnyCGwSTEPTN1G//LVhnss3SRRReB09rB+60E28a3YosC5xM5mGUOaNka7We2xh88KIhNvRR+nDF8Xd2mXZjkpneEM6EP5RoVfDLeQxY5U6zpHxm0hWM+zTbt8G0mA8a7gNl6UndV5iX5NxH9xsdUT2snvK6N9wDKm49JQ11u4NwyECCwE+Il0Y96EU5CW4ZJjhitRNqVx6dA3kv/LxiSRL/QPjFx99QukWKe7osh6NhWfRhiB8To71WEHYI7WldTIpVjVyniLSDKds7oA1m0mQQ3pepjDBnw5i9UaH+MmOQcBmra423JxG/WHM025e5NJN5aDrja9QNamvWV6vm1Yyac6Ey2CIqXTpyBbKHndPMVON56u3jXURoxuLVTUYxTx1DgZgE= X-MS-TrafficTypeDiagnostic: DB8EUR05HT222: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: qZh5B5yS7hvcwuAz1jVOPcljCjmMs4PSmS2/cz3RzSP66bZ6g5H59e0Ul1AbrBQfDQTDB7S7wd8NQDYg1bDbxKLgw8XBQjq1M5tRJQNW86FPsW7+yHY4ZlfIG6M6bpHHXNFy1Y4Rj94Wh20k0TjLbLLF6Mgwz1PxiahmQp5QWY1fF73Ecj/XFHHKtiY+ahxrvUETUYyaai7UUWLjnPMdbRdhLU8JtIhE24gbvJH9c6WdwproJ4eIhvi4SzOs8pl6LaxMRz4RWw9XelKpyi3daZScJ4oUIk7twmTRW3w8esccUTHDtwL6LiQm37ZtPlI3hDgahTnnXYg7DZIy8ik4PWGOdzuBOizI2DRBOtS7OWX3Gi12MoxJXOlNKDi857vhGs4UCsx8PYrWtVdd6r1O2A== X-MS-Exchange-AntiSpam-MessageData: pYiVIPETlE62KsZW4iLrGlbgdxh0zC4BIB3Tfktdn2SqJ4JEuwM3Jsj5lVKgVjrkHgw/ng47ctmLz7Pb207g3Sul9dxBp1A8RLMzC6AIjOh+p18vrdC6Yj5NRMCV9xQrMn40XOtinrbgTTccaWxvhA== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: b8af448e-ba9a-4d4c-5742-08d9305607fc X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2021 23:33:51.1563 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: DB8EUR05FT030.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: DB8EUR05HT222 Subject: [FFmpeg-devel] [PATCH 30/54] avformat/nsvdec: 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: oXQxjG/F88J2 by setting the FF_FMT_INIT_CLEANUP flag. Signed-off-by: Andreas Rheinhardt --- libavformat/nsvdec.c | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/libavformat/nsvdec.c b/libavformat/nsvdec.c index 7dcc218546..ec73cb7f48 100644 --- a/libavformat/nsvdec.c +++ b/libavformat/nsvdec.c @@ -211,7 +211,6 @@ static const AVCodecTag nsv_codec_audio_tags[] = { //static int nsv_load_index(AVFormatContext *s); static int nsv_read_chunk(AVFormatContext *s, int fill_header); -static int nsv_read_close(AVFormatContext *s); /* try to find something we recognize, and set the state accordingly */ static int nsv_resync(AVFormatContext *s) @@ -495,30 +494,25 @@ static int nsv_read_header(AVFormatContext *s) for (i = 0; i < NSV_MAX_RESYNC_TRIES; i++) { err = nsv_resync(s); if (err < 0) - goto fail; + return err; if (nsv->state == NSV_FOUND_NSVF) { err = nsv_parse_NSVf_header(s); if (err < 0) - goto fail; + return err; } /* we need the first NSVs also... */ if (nsv->state == NSV_FOUND_NSVS) { err = nsv_parse_NSVs_header(s); if (err < 0) - goto fail; + return err; break; /* we just want the first one */ } } - if (s->nb_streams < 1) { /* no luck so far */ - err = AVERROR_INVALIDDATA; - goto fail; - } + if (s->nb_streams < 1) /* no luck so far */ + return AVERROR_INVALIDDATA; /* now read the first chunk, so we can attempt to decode more info */ err = nsv_read_chunk(s, 1); -fail: - if (err < 0) - nsv_read_close(s); av_log(s, AV_LOG_TRACE, "parsed header\n"); return err; @@ -738,6 +732,7 @@ const AVInputFormat ff_nsv_demuxer = { .name = "nsv", .long_name = NULL_IF_CONFIG_SMALL("Nullsoft Streaming Video"), .priv_data_size = sizeof(NSVContext), + .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = nsv_probe, .read_header = nsv_read_header, .read_packet = nsv_read_packet,