From patchwork Tue Feb 22 06:55:27 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jiasheng Jiang X-Patchwork-Id: 34439 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6838:d078:0:0:0:0 with SMTP id x24csp4082912nkx; Mon, 21 Feb 2022 22:56:09 -0800 (PST) X-Google-Smtp-Source: ABdhPJyiUyLP1o9/SC/0531U/P0VNvlg4vVD6sTpG7C+O3+HOaj/MZqv7Fu/cwJ4DWYpnGwstIzm X-Received: by 2002:a17:907:334c:b0:6cd:76b7:3948 with SMTP id yr12-20020a170907334c00b006cd76b73948mr19621455ejb.55.1645512969120; Mon, 21 Feb 2022 22:56:09 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1645512969; cv=none; d=google.com; s=arc-20160816; b=ihqvPAbY2MnEiQ6AnnBKm7xDeWBQY3Z+TIwB2nOV9mJ85DDmDlMxv/OsM2tkuGKfY/ 7fz6YhdfUaIdTOMCVkfwGHuUkm6HqW4K+3uChFTWpKnAyhfhjm3tEV/74q0ZkVMZEnyh 8AT6MklJlxlcIqEUTVpOf1uVyT1QM2yjlTrIIclPVcY9DCTrisd1MyNhftP17l4J6yFG G/kvGhMfqX8c8rIGSJjES/i9nhs8qko8dxQ71klwbZzuktnRsydxm1Nm7rLeZZMzt/ao rdIvOEN704uq3qC8sEOVW6CaMjiSvI296RBY+E83m1aLMENNRZmt7QqzMJfUR0Gccu88 QvxQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:mime-version:message-id:date:to:from :delivered-to; bh=kmfwafHxMFnPOenYLb7n64Dna23Vanito3Logb2IZmI=; b=HOVBpKCGg0eErLyKJ3eo1R0115s/yh66+pyzW3tZtU2RvZj2w5QtvEON3YBdysKnV4 rgFTkuIaa4W8QL0XkTwja8/DlHENIbouTcObPlKoWOrbp2GiiQWLC+VObEL2deU68TfI yJckofKaLnk4cb6uar09eFC6cx6cM6s6QnbdW7EiEep2gy08BPDGbAHQfOzPFSYea7EM 8aadkS7/RbAfi+TuL2h7wR+U4+HlSm+Uu44ujXjUYPJJzgqsHpeip5USYkDHcD9z3Fu3 2yQT3SECGEZgZ0pB83qEbre9zmyDo7cITbboArzS/gRyKRk4pHpy0tNdmtziWpYLKXMw kxzg== ARC-Authentication-Results: i=1; mx.google.com; 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 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id bq14si2484751ejb.83.2022.02.21.22.55.45; Mon, 21 Feb 2022 22:56:09 -0800 (PST) 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; 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 Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id E086668B056; Tue, 22 Feb 2022 08:55:42 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from cstnet.cn (smtp21.cstnet.cn [159.226.251.21]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 5593E68A64A for ; Tue, 22 Feb 2022 08:55:34 +0200 (EET) Received: from localhost.localdomain (unknown [124.16.138.126]) by APP-01 (Coremail) with SMTP id qwCowADX3PDhiBRi8vpKAQ--.51266S2; Tue, 22 Feb 2022 14:55:30 +0800 (CST) From: Jiasheng Jiang To: ffmpeg-devel@ffmpeg.org Date: Tue, 22 Feb 2022 14:55:27 +0800 Message-Id: <20220222065527.2581880-1-jiasheng@iscas.ac.cn> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 X-CM-TRANSID: qwCowADX3PDhiBRi8vpKAQ--.51266S2 X-Coremail-Antispam: 1UD129KBjvdXoWrKFyxXr18WrykCrWktFyrJFb_yoWkJrX_ur WrtF15Jr4Yv3sFv3WDGrWFgryktwn5Jrs3GrWqqF13Z3yjka4vkF4kXrs8Z3s7uFy2yrZx Cw1kWrsYqw129jkaLaAFLSUrUUUUUb8apTn2vfkv8UJUUUU8Yxn0WfASr-VFAUDa7-sFnT 9fnUUIcSsGvfJTRUUUbzxFF20E14v26r1j6r4UM7CY07I20VC2zVCF04k26cxKx2IYs7xG 6rWj6s0DM7CIcVAFz4kK6r1j6r18M28lY4IEw2IIxxk0rwA2F7IY1VAKz4vEj48ve4kI8w A2z4x0Y4vE2Ix0cI8IcVAFwI0_Gr0_Xr1l84ACjcxK6xIIjxv20xvEc7CjxVAFwI0_Gr0_ Cr1l84ACjcxK6I8E87Iv67AKxVW8Jr0_Cr1UM28EF7xvwVC2z280aVCY1x0267AKxVWxJr 0_GcWle2I262IYc4CY6c8Ij28IcVAaY2xG8wAqx4xG64xvF2IEw4CE5I8CrVC2j2WlYx0E 2Ix0cI8IcVAFwI0_Jr0_Jr4lYx0Ex4A2jsIE14v26r1j6r4UMcvjeVCFs4IE7xkEbVWUJV W8JwACjcxG0xvY0x0EwIxGrwACjI8F5VA0II8E6IAqYI8I648v4I1l42xK82IYc2Ij64vI r41l4I8I3I0E4IkC6x0Yz7v_Jr0_Gr1lx2IqxVAqx4xG67AKxVWUJVWUGwC20s026x8Gjc xK67AKxVWUGVWUWwC2zVAF1VAY17CE14v26r1Y6r17MIIYrxkI7VAKI48JMIIF0xvE2Ix0 cI8IcVAFwI0_Jr0_JF4lIxAIcVC0I7IYx2IY6xkF7I0E14v26r1j6r4UMIIF0xvE42xK8V AvwI8IcIk0rVWrZr1j6s0DMIIF0xvEx4A2jsIE14v26r1j6r4UMIIF0xvEx4A2jsIEc7Cj xVAFwI0_Jr0_GrUvcSsGvfC2KfnxnUUI43ZEXa7VUbrMaUUUUUU== X-Originating-IP: [124.16.138.126] X-CM-SenderInfo: pmld2xxhqjqxpvfd2hldfou0/ Subject: [FFmpeg-devel] [PATCH] fftools/ffmpeg_filter: Add check for av_memdup 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: Jiasheng Jiang Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: 9rWNObM1DLEt As the potential failure of the av_malloc(), the av_memdup() could return NULL if fails. Therefore, it should be better to check it and return error if fails, like the av_buffer_ref(). Fixes: 535a835e51 ("ffmpeg: use display matrix frame side data for autorotation") Signed-off-by: Jiasheng Jiang --- fftools/ffmpeg_filter.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/fftools/ffmpeg_filter.c b/fftools/ffmpeg_filter.c index 2c3f21985f..cdaa0d8165 100644 --- a/fftools/ffmpeg_filter.c +++ b/fftools/ffmpeg_filter.c @@ -1161,8 +1161,11 @@ int ifilter_parameters_from_frame(InputFilter *ifilter, const AVFrame *frame) av_freep(&ifilter->displaymatrix); sd = av_frame_get_side_data(frame, AV_FRAME_DATA_DISPLAYMATRIX); - if (sd) + if (sd) { ifilter->displaymatrix = av_memdup(sd->data, sizeof(int32_t) * 9); + if (!ifilter->displaymatrix) + return AVERROR(ENOMEM); + } if (frame->hw_frames_ctx) { ifilter->hw_frames_ctx = av_buffer_ref(frame->hw_frames_ctx);