From patchwork Mon Apr 5 01:44:32 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 26743 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id C3C7D44982B for ; Mon, 5 Apr 2021 04:45:15 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id A9C4668811C; Mon, 5 Apr 2021 04:45:15 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR06-AM7-obe.outbound.protection.outlook.com (mail-am7eur06olkn2025.outbound.protection.outlook.com [40.92.16.25]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 7526C68803A for ; Mon, 5 Apr 2021 04:45:14 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MNj67FdnOqczumLB+SW1+GKyFLZhqnJHoB8IC13+0SH19AWkJFeas6dUS0sge+hnDNGFSeftVYijDJLJN8aV8z9RSMOYBpjPxPkd5HZehFrV7ZkEpxwzhbrt9rSAyY4qaOwlJOLyp5Slm9dKUDeLIfznavfToNqVhhvoi3+gvS5VyVja2f+Hm1qTBDNT0iuEuxoQtAi/FoILmnmp3mT8eVTOizcrHtV00VUXB44n6oUOf6+0uDqpxS8/5O/MKNXOWN+cxT/JtlWjMRO7FQEdPl4cAKnSvCytpPByO0GejlJIoOPhF2MtDqzY16t2slBB5qNTEWtFXt4hsjpRZR2mSQ== 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=2Nra4M+1P0oJPylR/eCFKL4DxnpFCenfCaSYtQ6PRQI=; b=ANHOTW4AXZyV3n5SSk0x98zZwSE/WVtA7RXLzu9jtqWhCKNSW/bZCwTXqMFLITUAgtMZcEMADo/O/SvEINxDi8JWHRtB+luSWBNbTMQ3IFyj7FOqv/mUbfmporG6Ylpvlq/MdNoerhqJIXVr1xXSmotmTRlSRuPpl+VbQHuF2QwOi32bs7ykThNzz0TeYMIWkWWQProNml3F8KioMlcjR0jFYp5msVwu8eUoQ3+KZCF/qP7bMoS0cOuysF24BtbOo5NHYIonAITrzvCRjBmfcFQ8Lj4NTopiVIZgKGFpxHnm/5ddpCajKnaEfhgjkh6W/3Vw0eLW2hc9RYhGUQzmdw== 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=2Nra4M+1P0oJPylR/eCFKL4DxnpFCenfCaSYtQ6PRQI=; b=oqoflDIY1kA6BF2+AckWuc7lA9T26PNwvqPp0H+R/6KN4c4Lce03w+VJAaaUzK6TI8GZdHBb4GcGPDhvnmn7goCCw5PhuZr/0/qu0PMAABsF+UUqOFz/YMUz+plcWrTvhzmRxhgmtPTx0i0aS80mACIPd97V65GXzYpOoDgFbqjH/x8qY8i1Wwv78yOiSIWACt9e/buY5UAFA0biIMeD5jfhgmQE+Io7LwDmFlexI4GSBGPEZN49ooq2BmKpaOPxfU2rPZyxqfm834rH2MSu1XiNpGort95aB505e83Jg1EW3cZ+oz3WCG/ZtWTpvriDc+wyPtpeg9fhU0r+KBmPQQ== Received: from AM7EUR06FT063.eop-eur06.prod.protection.outlook.com (2a01:111:e400:fc36::47) by AM7EUR06HT236.eop-eur06.prod.protection.outlook.com (2a01:111:e400:fc36::279) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28; Mon, 5 Apr 2021 01:45:13 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:fc36::52) by AM7EUR06FT063.mail.protection.outlook.com (2a01:111:e400:fc36::403) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Mon, 5 Apr 2021 01:45:13 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:5B769E29BBD88E2AC9668769E791434B2EC5B8A4830ED69F77E88FAA9909E29D; UpperCasedChecksum:DBB4390700B5480D278DBA1C379FC786D9E09D306CE9C30534BF775FFAA4CF45; SizeAsReceived:7596; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21%3]) with mapi id 15.20.3999.032; Mon, 5 Apr 2021 01:45:13 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Mon, 5 Apr 2021 03:44:32 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [CuBLnYJlusRrzGfw2NkzQpGEKFHizwNH] X-ClientProxiedBy: AM0PR02CA0189.eurprd02.prod.outlook.com (2603:10a6:20b:28e::26) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210405014434.3973535-3-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.137.96) by AM0PR02CA0189.eurprd02.prod.outlook.com (2603:10a6:20b:28e::26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Mon, 5 Apr 2021 01:45:12 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 0cca47d6-8cdb-4830-0995-08d8f7d47472 X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiS3KLhuc01YFDN7B235wyuezd9HONY1KtCinqsFn3tOE7D1ScfzlzFfqP5GoQGF3WbCFeugYYjVLUi43JeZe/AUC0usW20SzSy7JS+yHtA8W2qcRQEhZoegccll/uqLRKvtL4+iiNFBCZLGgN56oatMGlPppomDOR+oAEWWirb/Ez8al6m4f8Bw/kq5YbeOZ1i0PH3J6ye1ysEVc+jr2pa3sXxbC7Ng2meK/G6Ajam99MVa6wJNDZA4Tiadubz5Now+bujASTvxeLzYNp0Djz3bu4FCet4fpBxEhbKIy+tMePhpdL/u70MG/imczt4wC8veQfFcOO/A665erUJ0GB4Wpm61EJt39EjEx1d9WUKx0puAsxnMmgJoC/p8T0F6bu0VUOBXWbznew/BCFpYb/VnWVygh3S2wNRXZH7UzDo2dSLcnFoHwWyIxBhgcKKu0zKA9XvEI6wUMA6xZivclC7KQYRDnZbYXlVrrItBnthHj1q0gnLdaijWakSPAB+RvowhEbDkubg6LEqI5V85Qf2qfOrfY91KsBhV+RIdJjX0BpzVLRb1M6b1yWPAjEJoynIhkWMnJw5oxVK0Z8vKegpJfLO0TxjjYiTD/PLeclXOXNkjsRw+Flxlf1Zkfk8zGIJIU8TFfVUYK6APBf98on/aAOdb/cAgdaKWqTxBUEJh8shIUJHsytGP1JIQAvQcY/Azju+0c8EEDIgJkKJrKuR164zdd6tXvYe8Xa1PvTfluiZBVltXilOVvAfwTpd8Lu0= X-MS-TrafficTypeDiagnostic: AM7EUR06HT236: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: zQZA+b79R175bkA1zIGFbnqQ57nA5M8mdIuBerlaelOWpG9p+5cSjDvam1gvZbiE/FCEGPqln0ggpfSmEktGcvRJLk3WFOImqsoVOz94D8+GJllDacw6cMyCUehdgRJz3324hZso+uKZs0NwOVGZJ1zJHeLkLx69ZDbDAtTK94QnBKqCOzDKXdmzriigqkjxbSbOSSIK+GWQlS3tEO27ZiQ8kwQTxDkmcQGtmyvfkpMzCF06r47IuTzVHOTtGDRaObNmkBA8K/gh3egAU5S9v7o/Kou5jgXlnAN6nqUpkqqwt4F2CJfmqxH2fzui6os96AupePcfJdTX4qJSlaF4D0E6h5a8YRLbTjL8/Au46ZFM2+d2HRw7N+NNb+Rx1HCRJZkr4vOyIFAfSn+kyNiOAg== X-MS-Exchange-AntiSpam-MessageData: jAFVLUPoq2SBeAIi6O39ne6MWNEDEIadtca7GRyYtgtFHkCPffDS7deVcGk3qydrvD1qblNwdEMHfeRFqtrbFRbIvy+D/Mj/o6IYEBhlSFcZDAbApkNFzWQ3a/KptZ7tFy6TSyR6sr1/Q50Pedi77g== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0cca47d6-8cdb-4830-0995-08d8f7d47472 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Apr 2021 01:45:13.3652 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: AM7EUR06FT063.eop-eur06.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: AM7EUR06HT236 Subject: [FFmpeg-devel] [PATCH 4/6] avcodec/rv10: Don't presume context to be initialized X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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" In case of resolution changes rv20_decode_picture_header() closes and reopens its MpegEncContext; it checks the latter for errors, yet when an error happens, it might happen that no new attempt at reinitialization is performed when decoding the next frame; this leads to crashes lateron. This commit changes this by making sure that initialization will always be attempted if the context is currently not initialized. Signed-off-by: Andreas Rheinhardt --- libavcodec/rv10.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/rv10.c b/libavcodec/rv10.c index 89b838ad15..bd70689cab 100644 --- a/libavcodec/rv10.c +++ b/libavcodec/rv10.c @@ -226,7 +226,7 @@ static int rv20_decode_picture_header(RVDecContext *rv) new_w = rv->orig_width; new_h = rv->orig_height; } - if (new_w != s->width || new_h != s->height) { + if (new_w != s->width || new_h != s->height || !s->context_initialized) { AVRational old_aspect = s->avctx->sample_aspect_ratio; av_log(s->avctx, AV_LOG_DEBUG, "attempting to change resolution to %dx%d\n", new_w, new_h);