From patchwork Sat Sep 21 01:57:15 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andriy Gelman X-Patchwork-Id: 15194 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 D784F44A314 for ; Sat, 21 Sep 2019 05:06:07 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id B89D3689C66; Sat, 21 Sep 2019 05:06:07 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-qk1-f196.google.com (mail-qk1-f196.google.com [209.85.222.196]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id D436B689C2C for ; Sat, 21 Sep 2019 05:06:00 +0300 (EEST) Received: by mail-qk1-f196.google.com with SMTP id y189so9284751qkc.3 for ; Fri, 20 Sep 2019 19:06:00 -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:mime-version :content-transfer-encoding; bh=hxUn7PbbU4JHnseToYWraMjkh/Q+bLFzkxlaYvXAa6g=; b=S8kkOshiof20dBEApojEZO4QtjS+gMEzYQPATotd9+21CgUjTVlEv+aFdzryVXFjny XP9hVBTOcq7okCObi5zu8Gn7AticHJyrxWhsKckQzDcIx3It/NBPcEPhsGsUoc0d5RkW UO33nV13gcfgXq2ahvg7rC6Ftwx0h2It2eZU2Wv95dC0RII+c05wQP+4fSxEtVKq1alS Lp/cBW8mrjmfW1bPdRbGDTKqAyXZTT5aK6II1NYAoycKismq9rPwqZz8Npm1NmIWhDGe 07prstceUF7+vD/vy+cs4aDdPRLoswTA2R76yojivBO82J6x3lfOOnfNWUNTaLnmUw0Q D54w== 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=hxUn7PbbU4JHnseToYWraMjkh/Q+bLFzkxlaYvXAa6g=; b=fahTSrArvze0qziMar3+sou+6LMs31+wc849Ih3yImWcO9CuP8XFIIksjoCwf4jiAz 9YXu8rik9oGC6DXBR2PLXPkbGPMkfgYIHZK1rmmgta8wb5stHEHsm1f68IQ2eUtaeoyL acyD7YuqDqpVS4C/HvSswGOIQf8yhceTqS20EozCxX593mn34DBoffeHfmSxSVRtJzSb 5+rQDAh7BmhuK4mFkngdvyUdLsOr+JBHP1PSEGLMNuJfDqbiWymCjXAqfWUZHdCMI/Xi Nz74canTYxDSNMOLB/YZczcfnmd97Kf3K6pFwU58Qmk3Xfhlt5BDC7z3x/iKvONotqCw LIYg== X-Gm-Message-State: APjAAAXPaWIl8Uh+uePGWqU6HQyc7XdRupTw42li28uBJbIlGg3uTXdQ XN/pKDN6wc6q67MEi4g8KOTlhrsQ X-Google-Smtp-Source: APXvYqyfiKipG3UosIcs+AbAYcCODaBQLt0Hcmbpkm5WG1cvDObeQMi4kfrZ8H/NPM8uOrWwe5zxIQ== X-Received: by 2002:a37:a8b:: with SMTP id 133mr6550234qkk.365.1569031058980; Fri, 20 Sep 2019 18:57:38 -0700 (PDT) Received: from localhost.localdomain (c-71-232-27-28.hsd1.ma.comcast.net. [71.232.27.28]) by smtp.gmail.com with ESMTPSA id t32sm2361153qtb.64.2019.09.20.18.57.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 20 Sep 2019 18:57:38 -0700 (PDT) From: Andriy Gelman X-Google-Original-From: Andriy Gelman To: ffmpeg-devel@ffmpeg.org Date: Fri, 20 Sep 2019 21:57:15 -0400 Message-Id: <20190921015715.24769-1-andriy.gelman@gmail.com> X-Mailer: git-send-email 2.23.0 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH] avcodec/hevc_ps: Remove dead code in vps_id check 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: Andriy Gelman Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" From: Andriy Gelman Since reading 4 bits always returns a value in the range [0, 15], the check for vps_id >= HEVC_MAX_VPS_COUNT, where HEVC_MAX_VPS_COUNT = 16, is redudant. --- libavcodec/hevc_ps.c | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/libavcodec/hevc_ps.c b/libavcodec/hevc_ps.c index abf08b919b..498467730b 100644 --- a/libavcodec/hevc_ps.c +++ b/libavcodec/hevc_ps.c @@ -447,11 +447,7 @@ int ff_hevc_decode_nal_vps(GetBitContext *gb, AVCodecContext *avctx, } memcpy(vps->data, gb->buffer, vps->data_size); - vps_id = get_bits(gb, 4); - if (vps_id >= HEVC_MAX_VPS_COUNT) { - av_log(avctx, AV_LOG_ERROR, "VPS id out of range: %d\n", vps_id); - goto err; - } + vps_id = get_bits(gb, 4); // vps_id in [0, HEVC_MAX_VPS_COUNT-1] so no check needed if (get_bits(gb, 2) != 3) { // vps_reserved_three_2bits av_log(avctx, AV_LOG_ERROR, "vps_reserved_three_2bits is not three\n"); @@ -882,11 +878,7 @@ int ff_hevc_parse_sps(HEVCSPS *sps, GetBitContext *gb, unsigned int *sps_id, // Coded parameters - sps->vps_id = get_bits(gb, 4); - if (sps->vps_id >= HEVC_MAX_VPS_COUNT) { - av_log(avctx, AV_LOG_ERROR, "VPS id out of range: %d\n", sps->vps_id); - return AVERROR_INVALIDDATA; - } + sps->vps_id = get_bits(gb, 4); // sps->vps_id in [0, HEVC_MAX_VPS_COUNT-1] so no check needed if (vps_list && !vps_list[sps->vps_id]) { av_log(avctx, AV_LOG_ERROR, "VPS %d does not exist\n",