From patchwork Wed Oct 14 00:19:50 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Miceli X-Patchwork-Id: 22933 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 A1C064497FF for ; Wed, 14 Oct 2020 03:20:06 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 7DC0068B97B; Wed, 14 Oct 2020 03:20:06 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f195.google.com (mail-pl1-f195.google.com [209.85.214.195]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 054AD68B940 for ; Wed, 14 Oct 2020 03:20:00 +0300 (EEST) Received: by mail-pl1-f195.google.com with SMTP id d6so804386plo.13 for ; Tue, 13 Oct 2020 17:19:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=miceli-net-au.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=+DrHdU3z+Mo9qepvTFGTc7Ti0kFSZjnj8u+UeA1s7QA=; b=gNHfJGP7BO0NChD+9KZiqWXdW4/c9+PbepVQ9F3K4H1MGIjXecEe+Fuh9CQjmuYwOz 9X3jbg24LrX8oT8X1X11x9qZ/ByJ0knusUs6da+8aocOThkxl4Dt7T7buvY2GzHEIWNP sbis9G8Yo27Jbxab291JwJa6Wy9I+mb6+iv92U1O0FMERluPOos9u2ZUvpB3aCgHzm2c 9f9t41RvKRm8h14AHmjXnEa+8DdgXigqnJ9zVpFubhNhn5jikizeRXZUfbyub0sgtD59 PtjOFDIsRkxo83pHwoRpWwEd8OhLoQrSBopiWkkb4eCHQ6PKZnOeAdhcF0hblRtVtyT1 AlYg== 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:mime-version :content-transfer-encoding; bh=+DrHdU3z+Mo9qepvTFGTc7Ti0kFSZjnj8u+UeA1s7QA=; b=PiRloKd2dopPJmSzDVl0EKolD5vu2mZv891/BCeY+ZgNAX/HiNMw2MOmnHWP/8TWp4 XWP3CNaHT0uKOdqFbLT+Y6/YNi/DC03P99V4/hDFcdz7KF/39zmHSwLvMA1POg2tEtx1 uTTg5nCj4kZ+5nP7QQNPvKUjEnZpcSpz7gYKdVGE/VrEyUbFJjExDNdWA5vRYaeNVzUb 4Epwq4L9I5k1YHxbHpZphAFkQc0tTc2TTDvYhjup2s6vaXwCx16pWc5Ys/hJtliDZ8aU GSsWvkvFlv5z0cXVdPvtJerugpBgNEjimYckZQR6aDEoCsmC95FFEj3WQASK1M3Z3XCH JCJA== X-Gm-Message-State: AOAM530n12jEBpvtp8GhS3Q2bg0vgDMjSs5RnOdqFC1f4gWSg6yKxPQU Klm5ZHAZwtQT+tcqqnlgw9GmOSMUkBI+7TlK X-Google-Smtp-Source: ABdhPJz47Dof1s0H86DK2r8/PLVrDyQ7Llqrz88SYhh+jPAz8HpQurjDmV+LESZZWcsDXnE8NCAb8Q== X-Received: by 2002:a17:902:b68d:b029:d3:e6e4:3d99 with SMTP id c13-20020a170902b68db02900d3e6e43d99mr1924195pls.62.1602634797863; Tue, 13 Oct 2020 17:19:57 -0700 (PDT) Received: from edna.localdomain (119-18-3-107.771203.syd.nbn.aussiebb.net. [119.18.3.107]) by smtp.gmail.com with ESMTPSA id q8sm929885pff.18.2020.10.13.17.19.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 13 Oct 2020 17:19:56 -0700 (PDT) From: Chris Miceli To: ffmpeg-devel@ffmpeg.org Date: Wed, 14 Oct 2020 11:19:50 +1100 Message-Id: <20201014001950.287601-1-chris@miceli.net.au> X-Mailer: git-send-email 2.28.0 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH] libavfilter/dnn_backend_native: check mem allocation 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: Chris Miceli Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" check that frame allocations return non-null. --- libavfilter/dnn/dnn_backend_native.c | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/libavfilter/dnn/dnn_backend_native.c b/libavfilter/dnn/dnn_backend_native.c index d45e211f0c..4fc3ba2044 100644 --- a/libavfilter/dnn/dnn_backend_native.c +++ b/libavfilter/dnn/dnn_backend_native.c @@ -79,8 +79,23 @@ static DNNReturnType get_output_native(void *model, const char *input_name, int { DNNReturnType ret; NativeModel *native_model = (NativeModel *)model; + NativeContext *ctx = &native_model->ctx; AVFrame *in_frame = av_frame_alloc(); - AVFrame *out_frame = av_frame_alloc(); + AVFrame *out_frame = NULL; + + if (!in_frame) { + av_log(ctx, AV_LOG_ERROR, "Could not allocate memory for input frame\n"); + return DNN_ERROR; + } + + out_frame = av_frame_alloc(); + + if (!out_frame) { + av_log(ctx, AV_LOG_ERROR, "Could not allocate memory for output frame\n"); + av_frame_free(&in_frame); + return DNN_ERROR; + } + in_frame->width = input_width; in_frame->height = input_height;