From patchwork Mon Jun 17 03:42:15 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 13581 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 91863447E9D for ; Mon, 17 Jun 2019 06:52:05 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 588C868A0C7; Mon, 17 Jun 2019 06:52:05 +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 3BC3F680912 for ; Mon, 17 Jun 2019 06:51:58 +0300 (EEST) Received: by mail-wm1-f68.google.com with SMTP id a15so7633208wmj.5 for ; Sun, 16 Jun 2019 20:51:58 -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=7EmLg1uK5UgWabFFcypP83PmUU8JHmtc3oov7C9EgNs=; b=JlW3H7+PSs7DwkrHPC+KotlNogFTFhAP8sD/7RU0H70ZdHLRCrxwei5zJHyhtJxSmt 0OLatvLo98TRmUy/OOLUrQ9QA8kqiz9NH8G/QJJ6g/ZqnHukW+RtcNu/Kw+CDdIWyxJ/ UQVeQnDgsQzrZwZ8/nB9AGyg1D1VB45iUwAmFuM5sD/hLqG41743raKYMVJHkNlVWoRT deZHcz2vZMdEWxVI9Qk3nOEy4Tp9YD4FdsQ5m8c4XgD1S8YJXV5J9rEMEkpK5GL5PJ8D 4hYJyoA4iOCid5FEGZHGM+zWXEjtyJhtHlHIsI8rXLesRRxUrsnOizSNKJ4B8f9kTBRy TkQQ== 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=7EmLg1uK5UgWabFFcypP83PmUU8JHmtc3oov7C9EgNs=; b=SXDTPpao1D7Ly5KtuF6935oSxLeN/OpO9kVQH4Xk39kJn5m8hrJuzHsUvOhWzOIyM7 AEvuHm8UVM40b4jvykZ8UOQdSVcikLqh9aySEA1yvs7ma90V8uuQ5O63CshigflIr9DM f4DPaUjQ3WZ3Bt3zYbvMh2NH4i8nOnRd82A20jkQS5wuR2q8Y5q4ZfKLzVCoMDA91KEC 0sn6Iryw2o2YnqEq/225txmHBK/q9nSL66ISYKzq6ocX/CzDSOepGlUPwZxHDQS+UUjT H45n/IDA6tpWAcim1546KbG1ThR83CFWK2XZUygGV6o6DCNDGJ3/J+IoCSzmpHIqUg6R oyUg== X-Gm-Message-State: APjAAAUs/pi981AMu5OjBFF0KJZ0VilftdIC2elBCJCsNCqqoC4lCWLw 5JhUUjb5BjQSK9A0Y7f8OkiH6MrL X-Google-Smtp-Source: APXvYqzbO5tKvhMPFf8l0zU1E4VUF8LDjoeMtTTa7dFNLjZXj9HEO5aby/0IpsLwa4+BltktO7Ambg== X-Received: by 2002:a05:600c:230c:: with SMTP id 12mr16318308wmo.166.1560743041264; Sun, 16 Jun 2019 20:44:01 -0700 (PDT) Received: from localhost.localdomain (ipbcc063db.dynamic.kabel-deutschland.de. [188.192.99.219]) by smtp.gmail.com with ESMTPSA id x83sm9632889wmb.42.2019.06.16.20.44.00 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Sun, 16 Jun 2019 20:44:00 -0700 (PDT) From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Mon, 17 Jun 2019 05:42:15 +0200 Message-Id: <20190617034223.21195-11-andreas.rheinhardt@gmail.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190617034223.21195-1-andreas.rheinhardt@gmail.com> References: <20190617034223.21195-1-andreas.rheinhardt@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 10/18] cbs: Remove superfluous checks for ff_cbs_delete_unit 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" ff_cbs_delete_unit never fails if the index of the unit to delete is valid; document this behaviour explicitly and remove the checks for whether ff_cbs_delete_unit failed, because all the callers of ff_cbs_delete_unit already make sure that the index is valid. Signed-off-by: Andreas Rheinhardt --- Several callers already ignored to check the return value. libavcodec/av1_metadata_bsf.c | 9 ++------- libavcodec/cbs.h | 2 ++ libavcodec/h264_metadata_bsf.c | 7 +------ libavcodec/h264_redundant_pps_bsf.c | 4 +--- 4 files changed, 6 insertions(+), 16 deletions(-) diff --git a/libavcodec/av1_metadata_bsf.c b/libavcodec/av1_metadata_bsf.c index 842b80c201..dafddced63 100644 --- a/libavcodec/av1_metadata_bsf.c +++ b/libavcodec/av1_metadata_bsf.c @@ -161,13 +161,8 @@ static int av1_metadata_filter(AVBSFContext *bsf, AVPacket *pkt) if (ctx->delete_padding) { for (i = frag->nb_units - 1; i >= 0; i--) { - if (frag->units[i].type == AV1_OBU_PADDING) { - err = ff_cbs_delete_unit(ctx->cbc, frag, i); - if (err < 0) { - av_log(bsf, AV_LOG_ERROR, "Failed to delete Padding OBU.\n"); - goto fail; - } - } + if (frag->units[i].type == AV1_OBU_PADDING) + ff_cbs_delete_unit(ctx->cbc, frag, i); } } diff --git a/libavcodec/cbs.h b/libavcodec/cbs.h index 5260a39c63..e1e6055ceb 100644 --- a/libavcodec/cbs.h +++ b/libavcodec/cbs.h @@ -380,6 +380,8 @@ int ff_cbs_insert_unit_data(CodedBitstreamContext *ctx, /** * Delete a unit from a fragment and free all memory it uses. + * + * Never returns failure if position is >= 0 and < frag->nb_units. */ int ff_cbs_delete_unit(CodedBitstreamContext *ctx, CodedBitstreamFragment *frag, diff --git a/libavcodec/h264_metadata_bsf.c b/libavcodec/h264_metadata_bsf.c index f7ca1f0f09..d05b75be14 100644 --- a/libavcodec/h264_metadata_bsf.c +++ b/libavcodec/h264_metadata_bsf.c @@ -428,12 +428,7 @@ static int h264_metadata_filter(AVBSFContext *bsf, AVPacket *pkt) for (i = au->nb_units - 1; i >= 0; i--) { if (au->units[i].type == H264_NAL_FILLER_DATA) { // Filler NAL units. - err = ff_cbs_delete_unit(ctx->cbc, au, i); - if (err < 0) { - av_log(bsf, AV_LOG_ERROR, "Failed to delete " - "filler NAL.\n"); - goto fail; - } + ff_cbs_delete_unit(ctx->cbc, au, i); continue; } diff --git a/libavcodec/h264_redundant_pps_bsf.c b/libavcodec/h264_redundant_pps_bsf.c index db8717d69a..8526b5b4c4 100644 --- a/libavcodec/h264_redundant_pps_bsf.c +++ b/libavcodec/h264_redundant_pps_bsf.c @@ -95,9 +95,7 @@ static int h264_redundant_pps_filter(AVBSFContext *bsf, AVPacket *out) if (!au_has_sps) { av_log(bsf, AV_LOG_VERBOSE, "Deleting redundant PPS " "at %"PRId64".\n", in->pts); - err = ff_cbs_delete_unit(ctx->input, au, i); - if (err < 0) - goto fail; + ff_cbs_delete_unit(ctx->input, au, i); } } if (nal->type == H264_NAL_SLICE ||