From patchwork Wed Jun 24 13:47:04 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 20582 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 D04F744B3C4 for ; Wed, 24 Jun 2020 16:53:59 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id B5AB268B652; Wed, 24 Jun 2020 16:53:59 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-wm1-f68.google.com (mail-wm1-f68.google.com [209.85.128.68]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 6B6D868B5C6 for ; Wed, 24 Jun 2020 16:53:50 +0300 (EEST) Received: by mail-wm1-f68.google.com with SMTP id o8so2401553wmh.4 for ; Wed, 24 Jun 2020 06:53:50 -0700 (PDT) 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 :mime-version:content-transfer-encoding; bh=sxDpyXcItfZ5d7tgBv7cS+orGvxDx20dqd6gAwiDonc=; b=JL3W3B9flZbkI1xeP6l+CDs+92QPoiQ1yWJ4PBe8SAMzgIplbuUHxjcP/riYth23nt K4P6nIaQlSg5IJzjzHmLhJBVVkkxi2g5tVrH9cGYXThlU2e1gKTsyqQwTIZIOpS0QEP+ +svQBqWIydIseDOyeyhNAmVEIVREulyk7D2OikP2kYqsnV0I3ZzROk5Wwj6gyB11mcMN D2+SeaRfxQOyA/Byq1mfOOEW6lnk5kB3jdn0+gJQ31tTUHOQH9Flzazz+uSxRcvrZZlI zT6XCMBWYejhcJyUYwqnkG8JX/1cFbPl15qJbR7+pCGp15bTE/xz0mEIqUe5X2PzEzxX InxA== 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:mime-version:content-transfer-encoding; bh=sxDpyXcItfZ5d7tgBv7cS+orGvxDx20dqd6gAwiDonc=; b=fo4+9K2FcOiTDJi4Ho+8+TKYJaG/nt/pddD3U4+DD/AujXs6RbUZxDosDaNg/E+I3E RIfMLkHuQpqaBn1uzb6+CTbUA/1FYp3RY+lBeCbXmbpObXMxRjPYYdgsee5kAtHKhkMW v746bfcci0sZI6JqH/ImTsga/YM/MYfYNOUsHH79KWRKs9tVGz5Kkbqt1QVEDylZvrBK qj8MVKkazsOS5CuLNREmPA/fqmSfiyN7UwQup8BuY0/S8aBi7QL8FWazPjEaAFzRmUoD ta8nIGV+trgCSKz3thELp0X3J6fY9FNR0LAmY96hbFMq+VRWPXWhi3OjXnW3qvewnvro gTTg== X-Gm-Message-State: AOAM532x+Up00LKyU4NtO8q6jDzgFfia8TApT46f6gOTzrj+TUlfWX0k Hxt+Lu8bD2uohFZOTM58pXQDSirl X-Google-Smtp-Source: ABdhPJxBFRZcQrG/MZ6GHm1OJ3NwQMXMigoGq7SnEIctYtWyGzI5jZQQT5WP8ztmEHPJhL1Zjbcvvg== X-Received: by 2002:a7b:cb4c:: with SMTP id v12mr29608509wmj.43.1593006829538; Wed, 24 Jun 2020 06:53:49 -0700 (PDT) Received: from sblaptop.fritz.box (ipbcc10296.dynamic.kabel-deutschland.de. [188.193.2.150]) by smtp.gmail.com with ESMTPSA id y25sm8172390wma.19.2020.06.24.06.53.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 24 Jun 2020 06:53:48 -0700 (PDT) From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Wed, 24 Jun 2020 15:47:04 +0200 Message-Id: <20200624134705.14833-8-andreas.rheinhardt@gmail.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200624134705.14833-1-andreas.rheinhardt@gmail.com> References: <20200624134705.14833-1-andreas.rheinhardt@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 8/9] avformat/smacker: Use st->priv_data to store 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" It simplifies freeing and allows to completely remove smacker_read_close. Signed-off-by: Andreas Rheinhardt --- libavformat/smacker.c | 16 +++------------- 1 file changed, 3 insertions(+), 13 deletions(-) diff --git a/libavformat/smacker.c b/libavformat/smacker.c index 201372aee6..2e4a499a13 100644 --- a/libavformat/smacker.c +++ b/libavformat/smacker.c @@ -205,10 +205,11 @@ static int smacker_read_header(AVFormatContext *s) avio_rl32(pb); /* padding */ /* setup data */ - smk->frm_size = av_malloc_array(smk->frames, sizeof(*smk->frm_size) + + st->priv_data = av_malloc_array(smk->frames, sizeof(*smk->frm_size) + sizeof(*smk->frm_flags)); - if (!smk->frm_size) + if (!st->priv_data) return AVERROR(ENOMEM); + smk->frm_size = st->priv_data; smk->frm_flags = (void*)(smk->frm_size + smk->frames); /* read frame info */ @@ -219,7 +220,6 @@ static int smacker_read_header(AVFormatContext *s) /* load trees to extradata, they will be unpacked by decoder */ (ret = ffio_read_size(pb, par->extradata + 16, par->extradata_size - 16)) < 0) { - av_freep(&smk->frm_size); return ret; } @@ -351,15 +351,6 @@ next_frame: return ret; } -static int smacker_read_close(AVFormatContext *s) -{ - SmackerContext *smk = s->priv_data; - - av_freep(&smk->frm_size); - - return 0; -} - AVInputFormat ff_smacker_demuxer = { .name = "smk", .long_name = NULL_IF_CONFIG_SMALL("Smacker"), @@ -367,5 +358,4 @@ AVInputFormat ff_smacker_demuxer = { .read_probe = smacker_probe, .read_header = smacker_read_header, .read_packet = smacker_read_packet, - .read_close = smacker_read_close, };