From patchwork Tue Jun 15 23:32:20 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28331 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp4313051iol; Tue, 15 Jun 2021 16:37:42 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzMEuPCO8IqD/fQK53Bd9lNwHSnQqJP3/DWWwiwCeW7yeP4ogfm1r9DLtMYVMCT24gkt1Q1 X-Received: by 2002:a05:6402:1559:: with SMTP id p25mr684208edx.343.1623800261890; Tue, 15 Jun 2021 16:37:41 -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 c11si322972edy.202.2021.06.15.16.37.41; Tue, 15 Jun 2021 16:37:41 -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=K1z+Uc9U; 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 4A04F689DB3; Wed, 16 Jun 2021 02:33:56 +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-vi1eur05olkn2021.outbound.protection.outlook.com [40.92.90.21]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 09DC9680454 for ; Wed, 16 Jun 2021 02:33:53 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FBgr35Eh3nCvzvmChhZUVzo9jLC+8SgIAtebqD2Dggf6Mh4MW+jYLVWV4eLWPwEdErPESaeL25blR9nehN3RG/ZQJS8OO5asKD3lsk4noh1LH35F4n4+3RB4MGHt9VqYnH4fkpSbZKuUlDT27RvH+2XVxeKl0/2+yoBBpvxqDeM2dyuVYAQjJkWoRuzZqMOTakHiQbKW63IqHqTy+iduIdsZDt/T3S5W6mZan1ee+NpF+KFHROqy16nj/n4HfFXm3/QWOeslhFgcd/97XOdPtbmmnITbj0HITAdVAukcxULvIHnowWxUlr/6pK1ppQDmFy5tCIvkQW9t61nPzRtpEw== 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=VgfKLtpD4Cs6Ea2KqAztPDB824LCASp9aIxH4/RnCEM=; b=gu6a2BlA20NjT/g1wV5kKKEfL8aYHfh2a/sFC7URcABv5ZR12LOrGaf6yXsL5FKGK+vxuokg2v+lkGncEohblBa64MtRykNv8gpXncidL4Cv/Zj9pQVeP2/0Ruup+5kuwPGn8QDZ069BMMydImfnDFApGaTYgcrk2Db2AVEFFnoJj1e2W9aWX5pxiP0D9TTxwF0G2fADJPW5u/84axf8DgqUWRd9Xbu5fazb5cExf7Jvh/1dVZpILkM0/budvOTNmjVzOZL1w/h9atfp+Y5xBsOaihw0yRzYUqbIyAa+r1ePf2oBzAD1/N/mLyQHchRN2qxe1+2YPXu+dtwW5TU+vg== 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=VgfKLtpD4Cs6Ea2KqAztPDB824LCASp9aIxH4/RnCEM=; b=K1z+Uc9UF620Y0YHvOLIES1wRZBonmW/QuYKuUazl0ta/w0pUFZnFu6rewZnILAIYwjzv9RcDyXVeEL4+FuUSOlNS99UjesQEdIsGeGvLr+VqdAQwYPUn5j9WpVxEo2BIpqx6GdI6HacB0sbDMmR1iqgFeKtlrsIs7hvNzqMOQbTG6+eYnrmSnDXd7uliYh/H/0vOzsHQHiWbq3c/begpibtMJ44hGiiE5U0rifb86vpLnCW5E6EXG4rDMuHPEPn7lywbs/j3EVbzKAYEHVT9xeoiRBvAAawQdD1gH9LyQxypeE4hSAjWbs7uqBUyFJSjqNTAnFkLu8VBQF8/N7aTA== Received: from DB8EUR05FT030.eop-eur05.prod.protection.outlook.com (2a01:111:e400:fc0f::41) by DB8EUR05HT128.eop-eur05.prod.protection.outlook.com (2a01:111:e400:fc0f::170) 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:52 +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:52 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:B3D6A924CD6DAAF9040A3E02947F826C93BB6A5A87DEA363EEFC8487B6C26CDF; UpperCasedChecksum:25F8F25544089610489AECC51733337ED5949A424BBA8E20C5FD581F5C16A152; SizeAsReceived:7594; 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:52 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Wed, 16 Jun 2021 01:32:20 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [jjQBFNsnUZRmhgpA22e/hHo/+0zZf/CG] 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-30-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:51 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 72efb3e3-5d71-459c-d25c-08d9305608bc X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiR9SlwCHtPrt+MV8TUUwp4pQ3gFot+Jrk9mLI+N6jfyjMDyua2eyp8bVC8Z6JK7zCONVCxtLC5GYiegmIg63jH+Z1O+Mn+JGucOEjEPYPLGjyabz2cCrdPgq6qeTnP0qd3kE4F2kzcD4Y8ow1mqPVpQiuS0eDfmYRfO+M7doLlT+U4qllgzUDzVhXR0pwMzkb9ogA11jLEzjsIEs3fR5+oNjJpA2qv/HZ4EKlZGYOvGvbu9BUn8/rGB7PEVXV//JdV7G0vvZFMweeM4yomjWTEL7g4KdVoa6lP7VShIooVllZ3e96RAFzQOLMy256/gs8gYe/O6I0tXlVXENqgTJt8e3WlLBmqgiV3+TITULqGwzhS0zh0TQgHki71ni3sQOHT/31tcR5hjojPeYQvU/5B9ntlY50IxjExsvp2YA5OYW//uxAAXjaqV3itig81bKmAcqr8vqo3PIGuPfurjQ8uPw84n3xu29odIwoc+8jzgaegrvT3P0IoZLBET2rLx82C/Sdziw2TVe3O/MsaT2KzZQtnYEYZxkShqPiO+qtSXVgN+MJ1DQEIkUxUhHYhQw1viSVjwLiKOz55pzQE8lXSmXSWUSB1F88O4K9L2dtKCjDSFiPoP6vB2WxcYMPMh32sDmf/NrNiR5Gq9QNtTCgwrTj7mGBcwN94JTzveAFt2pGjbWLNOVmlJD/J+RS9z06PX1QoN1H97hz0P+jW3Tz1oWQ7MMeIh6NB2/q1d119L9/JeTaslSp8Jd52Hx+wZe48= X-MS-TrafficTypeDiagnostic: DB8EUR05HT128: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: n6pEpQtrkjOQCDMy8f1srhEsI+c+znA++4eK4rnZKSrBYYrtNBuBujGOGZd5cwt7x+tX/lYSiexI6EmcRZTuxB7/Uu308ppTsfbJyP4/gGcY4u5sfg0EpKLUmukE3/cgDxL+WLp+WuNJncW7Mozvmhvg8W1MTymK2vnCGlPXTM1yfrUDEDPUogB3AU6BZEUwrW4MoQx6+zDO2Pa7SJqVnuryNFpI2+IhB72D5vZkpZJ1tc8OA5XW8bN44/MXHvdqAERH3ktmnpzwT5Wn3TtrB1So3SyVA47d3ARrK3UAPGyNWEehbZ8hO+UqvuHTGchrKFZrPnYTEfyOoRxplIvuH6BrFhjmfbD7or8qFHngMA4DqY+cb3zgZVp5nSwtOlGUe/1c8PVrKtEC0EjkbUsXXA== X-MS-Exchange-AntiSpam-MessageData: Bfn+UuZ9wOCgZR24QnH/oTETS8sPU7yEvZjHJ95uypsBVRlwBoe3Usxj/u8Dl24TpGmVk2oaTGHILPXwYzm8nwDzg/vmVQGeheQXN9c9BRIMFEheOjXxZhDIT/xbAyu353oI2RoruF/9AqjShcVGRQ== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 72efb3e3-5d71-459c-d25c-08d9305608bc X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2021 23:33:52.4327 (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: DB8EUR05HT128 Subject: [FFmpeg-devel] [PATCH 31/54] avformat/nutdec: 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: CWtWXWltZquD by setting the FF_FMT_INIT_CLEANUP flag. Signed-off-by: Andreas Rheinhardt --- libavformat/nutdec.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/libavformat/nutdec.c b/libavformat/nutdec.c index e709257135..0ddc552c21 100644 --- a/libavformat/nutdec.c +++ b/libavformat/nutdec.c @@ -805,7 +805,7 @@ static int nut_read_header(AVFormatContext *s) pos = find_startcode(bc, MAIN_STARTCODE, pos) + 1; if (pos < 0 + 1) { av_log(s, AV_LOG_ERROR, "No main startcode found.\n"); - goto fail; + return AVERROR_INVALIDDATA; } } while (decode_main_header(nut) < 0); @@ -815,7 +815,7 @@ static int nut_read_header(AVFormatContext *s) pos = find_startcode(bc, STREAM_STARTCODE, pos) + 1; if (pos < 0 + 1) { av_log(s, AV_LOG_ERROR, "Not all stream headers found.\n"); - goto fail; + return AVERROR_INVALIDDATA; } if (decode_stream_header(nut) >= 0) initialized_stream_count++; @@ -829,7 +829,7 @@ static int nut_read_header(AVFormatContext *s) if (startcode == 0) { av_log(s, AV_LOG_ERROR, "EOF before video frames\n"); - goto fail; + return AVERROR_INVALIDDATA; } else if (startcode == SYNCPOINT_STARTCODE) { nut->next_startcode = startcode; break; @@ -852,11 +852,6 @@ static int nut_read_header(AVFormatContext *s) ff_metadata_conv_ctx(s, NULL, ff_nut_metadata_conv); return 0; - -fail: - nut_read_close(s); - - return AVERROR_INVALIDDATA; } static int read_sm_data(AVFormatContext *s, AVIOContext *bc, AVPacket *pkt, int is_meta, int64_t maxpos) @@ -1297,6 +1292,7 @@ const AVInputFormat ff_nut_demuxer = { .long_name = NULL_IF_CONFIG_SMALL("NUT"), .flags = AVFMT_SEEK_TO_PTS, .priv_data_size = sizeof(NUTContext), + .flags_internal = FF_FMT_INIT_CLEANUP, .read_probe = nut_probe, .read_header = nut_read_header, .read_packet = nut_read_packet,