From patchwork Tue Dec 24 00:56:12 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Lance Wang X-Patchwork-Id: 16935 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 1B3E4448A3D for ; Tue, 24 Dec 2019 02:56:26 +0200 (EET) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id EAD0768A303; Tue, 24 Dec 2019 02:56:25 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pf1-f194.google.com (mail-pf1-f194.google.com [209.85.210.194]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 667C3680109 for ; Tue, 24 Dec 2019 02:56:19 +0200 (EET) Received: by mail-pf1-f194.google.com with SMTP id 195so9088063pfw.11 for ; Mon, 23 Dec 2019 16:56:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=3l9nafsa+4aj8VhUYJoV5Bqgf9MfxQsTvxiS2LkZE3E=; b=NZfjEGZwimfORVhgdgN06bU00jvngF9fUg743AGUSgoLmAC8rTatwzFaW1HL96aOyq hB0K5gA/OkNkiX1LorrN2fdhrJxLG2cAj5kTZ1kMd5+sbFHhqycqy5UNUW0OuLYc3yg1 PP5tiMNcgYxURdRo3/Rn/f7gxBfn/ApkEoJGT7xROfOhQUvEvYoTeXVNLcbwUe/zKfpU XofvoSvDS9I2H6bRwZpCsc2Llm77gE2vMMcmPb7TTFirqNP2XFTNjnTjbQhiSgo0/scI xi9Y8Hv3NdPGPH6Nx1I+UeZbRoZcRypNRr8lWmHFgTzpEeahScI3sGgS3IP7aqd5EX5A kBrg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=3l9nafsa+4aj8VhUYJoV5Bqgf9MfxQsTvxiS2LkZE3E=; b=eQ2AEPwy//gB6veOXRQeqgfbV3J261IvOWu2JMthF61My8xf2OIni1l5lXTCUR53cx 2vjnA+D9/lDW7/MpujwKY3sDjuthHkX0BBSzHVNjptMX4DbQPFAqMuC9/mhDb7niVUfL fQ84f0fI92LOgaBQSl8MC+hCPVBQI6Z9DHofGQDMX5qCvRdW6b4JiCi5n7kFoIjktoRv rw5x80O+70yMk4FFdrhq2e2cWHrzrKTM8y3Q7IrTrmaNQAq+/QCJqQZAAAoSRl2vM/vM 6wO8GLVDB2baF9qRq8vcZCO+CiJW/I+vE2JujR++NlqoOHdSJWoVeWB8GXL55qL0TNUz Aubg== X-Gm-Message-State: APjAAAXcE98RJcC/CqsUaFTtVz2Dm86IQkWhayEllR7aAP5B9fz3tm/f 5VViLps+z00/U3yteLRV32h8I6KC X-Google-Smtp-Source: APXvYqx+JeBlDirk+MZuCildkuU9zKdL5r5//L+rAPK8mdR8rVnRqBfO/gf2Z/Kh8XwvUqhZUihKLg== X-Received: by 2002:a62:3703:: with SMTP id e3mr26041825pfa.154.1577148977395; Mon, 23 Dec 2019 16:56:17 -0800 (PST) Received: from vpn.localdomain ([47.90.99.151]) by smtp.gmail.com with ESMTPSA id d26sm23182001pgv.66.2019.12.23.16.56.15 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 23 Dec 2019 16:56:16 -0800 (PST) From: lance.lmwang@gmail.com To: ffmpeg-devel@ffmpeg.org Date: Tue, 24 Dec 2019 08:56:12 +0800 Message-Id: <20191224005612.28334-1-lance.lmwang@gmail.com> X-Mailer: git-send-email 2.9.5 In-Reply-To: <20191223144813.25900-1-lance.lmwang@gmail.com> References: <20191223144813.25900-1-lance.lmwang@gmail.com> Subject: [FFmpeg-devel] [PATCH v2] avutil/frame: Use av_realloc_array() 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: Limin Wang MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" From: Limin Wang Signed-off-by: Limin Wang --- libavutil/frame.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/libavutil/frame.c b/libavutil/frame.c index e4038096c2..1a67eda91d 100644 --- a/libavutil/frame.c +++ b/libavutil/frame.c @@ -693,14 +693,11 @@ AVFrameSideData *av_frame_new_side_data_from_buf(AVFrame *frame, { AVFrameSideData *ret, **tmp; - if (!buf) + if (!buf || frame->nb_side_data > INT_MAX - 1) return NULL; - if (frame->nb_side_data > INT_MAX / sizeof(*frame->side_data) - 1) - return NULL; - - tmp = av_realloc(frame->side_data, - (frame->nb_side_data + 1) * sizeof(*frame->side_data)); + tmp = av_realloc_array(frame->side_data, + (frame->nb_side_data + 1), sizeof(*frame->side_data)); if (!tmp) return NULL; frame->side_data = tmp;