From patchwork Mon Sep 5 16:23:36 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paul B Mahol X-Patchwork-Id: 37675 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:139a:b0:8f:1db5:eae2 with SMTP id w26csp2732277pzh; Mon, 5 Sep 2022 09:20:40 -0700 (PDT) X-Google-Smtp-Source: AA6agR76etF+0e+FlSfdhC9Ch50Lx7lGKHrZHsaex8WQsI81+8GTACArv8V0mXarr92OvXB691lG X-Received: by 2002:a17:906:a219:b0:6e4:86a3:44ea with SMTP id r25-20020a170906a21900b006e486a344eamr37904839ejy.385.1662394839997; Mon, 05 Sep 2022 09:20:39 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1662394839; cv=none; d=google.com; s=arc-20160816; b=pPrIU17PVwhT+4kF7h4iYEfGXeSiqIrnP0VhtUPSSpBPK9OC/RuHsAV+sFRlj71Pbe 42lz4giMpIn03MmDY9Ct71BuavUZD98gnKQj9aXbKcU7xVeymqUUmTohKtfgKrkHKwyl CRQ3V8LmcNZ0NQzHGEJm6s+LxAwDKKhTWZXZDoJtS7+IRaN95YxwLYZgg9bBiNCL+8ZJ lVhaK0RZcBfI2lpZZZtcnJcyz8f681UtjxFIgcED8vPmBuzUqPEhzNH1hHVY42KeDcZL Ea1mSjlSJgqXpKZZQLJD+INuW4YO1/YMaotCCPd7QscKa/fmOwr8A0t6wHoIm7f8Vuu/ 8kOQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:reply-to:list-subscribe:list-help:list-post :list-archive:list-unsubscribe:list-id:precedence:subject:to :message-id:date:from:mime-version:dkim-signature:delivered-to; bh=hP/N97Y2iTAnlcujiGdEV6Bn/35pThaQzuLjKA/8rso=; b=sEY7N+wlkqpCtrQFXFRzRxrA2cRXh4Q8TCB60x6g5uoxNogDj8KsCR6MYrm+EDu08d 3qJC0McYzceLhyZ+svBj7VT2WSVo4sREnQZc67t7H1HmJwEtaOcm2bfCZj1gN6RdCvML 4Og9crP2lRDuQnRsJ5DoKUHh4lB+mfmAxQ2DY0iKF47ZUuEIZFeYFzyOH1lUjgB6RRBn Zt2uoyv/kCMxVW1z8qHmvV3YB5S0t4jNHXjJ1B/FgJCEae3i98lvdXBHoe25yEZnztjm gqrufpLc8jkn3oUcpxqnGBRtvfsPGVwnztBhcw/9Y/6Xsx0xkO2Cqb8yiul+4WFc2WFb HH8w== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20210112 header.b=YJ7mHiPW; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id qw23-20020a1709066a1700b007307f95bc5dsi8113664ejc.383.2022.09.05.09.20.39; Mon, 05 Sep 2022 09:20:39 -0700 (PDT) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20210112 header.b=YJ7mHiPW; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id ACA0568B35D; Mon, 5 Sep 2022 19:20:36 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-yb1-f179.google.com (mail-yb1-f179.google.com [209.85.219.179]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E2BDE68B35D for ; Mon, 5 Sep 2022 19:20:29 +0300 (EEST) Received: by mail-yb1-f179.google.com with SMTP id g5so13376698ybg.11 for ; Mon, 05 Sep 2022 09:20:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date; bh=OxE7ugkpHLd/fYHjFq93ly3o/RQJkLvEo76+RcPLsfg=; b=YJ7mHiPWO5nF4mFglNMYbAhWPP0JDkF/orQ2jc8to2ov0/CEQmxeuAsvCSlKOweyK1 2156Suou/w4pyhAatBFcTM0pv/oF/2QUhhmmBXWXZr2RL2kJ3tojJb5/OF6b8AWeSutw Z5yJ+KeRxnbng6SkTBAQLf+75csLCgXD1wqPpd4/nnXJXUhhyRFqz3eRjGSjPbKdCYe6 njr8IySPmXim7xP0iWWDslmSVCRnjULRkwBGecKlGXF2Guz7mFT0ETRmb7jvzqVzvN8G T7XY2pk7a6CSPohk+/spnGWIVYw4b9F1WhG93M9IvcHOceU/uRNmr1tzuZScFIsIVt3J 725w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date; bh=OxE7ugkpHLd/fYHjFq93ly3o/RQJkLvEo76+RcPLsfg=; b=c/30UhvT55paJVsUuzT2cQUa69BFz+VKNOPhWjEF2AKmlFQkAjAG2IhFIFEYw82MVR 57PLlk0jEMKwYJ1Zn1xrMYMn9h2c32HIYfdWPdg6OnBJANTdzMdQUJ8aT1scQVcBb89+ PwKM8JPbXBBcGrFHc76n4Svb+vqI1s73ulakUbZAWQ1PjZSsHAELP9mYA0+h3Y/n45S1 J2w6wTP01G0Kwsro19Cwb5XewVyuL7X8KWYivnSlKqkD+D6yWZXTFTZeEkZkcb6MVlBt 2tPYAbl23vcyJdogqKtFufcEfTW8mWhjAPtIDU2pKhK7ZRJonR3DUHKNlwzZIgJTdQ0x 09hw== X-Gm-Message-State: ACgBeo0DP8fYY8cBcOzpE6+o35luBWRcjktW4ZSzy+AtE68PgGCa7g1s 69tG3rd4D9FgBdjWHh4hhLqLkPlZH+E6JLXquhapFFoz X-Received: by 2002:a25:d7ca:0:b0:6a8:f1d7:afac with SMTP id o193-20020a25d7ca000000b006a8f1d7afacmr6661437ybg.396.1662394828122; Mon, 05 Sep 2022 09:20:28 -0700 (PDT) MIME-Version: 1.0 From: Paul B Mahol Date: Mon, 5 Sep 2022 18:23:36 +0200 Message-ID: To: FFmpeg development discussions and patches X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [FFmpeg-devel] [PATCH] avcodec/flac_parser: ensure there are more headers for scoring X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: nikFQJ+mn/cr Patch attached. From 81656532bdf649b43e3ac777637433b033b56d03 Mon Sep 17 00:00:00 2001 From: Paul B Mahol Date: Mon, 5 Sep 2022 18:12:10 +0200 Subject: [PATCH] avcodec/flac_parser: ensure there are more headers for scoring Previously invalid frame may be returned, happened when seeking. Fixes #7684 Signed-off-by: Paul B Mahol --- libavcodec/flac_parser.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavcodec/flac_parser.c b/libavcodec/flac_parser.c index a1d9cd7f29..11cd5540cf 100644 --- a/libavcodec/flac_parser.c +++ b/libavcodec/flac_parser.c @@ -600,7 +600,7 @@ static int score_header(FLACParseContext *fpc, FLACHeaderMarker *header) static void score_sequences(FLACParseContext *fpc) { FLACHeaderMarker *curr; - int best_score = 0;//FLAC_HEADER_NOT_SCORED_YET; + int best_score = FLAC_HEADER_NOT_SCORED_YET; /* First pass to clear all old scores. */ for (curr = fpc->headers; curr; curr = curr->next) curr->max_score = FLAC_HEADER_NOT_SCORED_YET; @@ -682,7 +682,7 @@ static int flac_parse(AVCodecParserContext *s, AVCodecContext *avctx, } fpc->avctx = avctx; - if (fpc->best_header_valid) + if (fpc->best_header_valid && fpc->nb_headers_buffered >= FLAC_MIN_HEADERS) return get_best_header(fpc, poutbuf, poutbuf_size); /* If a best_header was found last call remove it with the buffer data. */ -- 2.37.2