From patchwork Sat Dec 10 00:48:43 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 39670 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a21:999a:b0:a4:2148:650a with SMTP id ve26csp1819487pzb; Fri, 9 Dec 2022 16:49:05 -0800 (PST) X-Google-Smtp-Source: AA0mqf7KmZVbCeTbobPT+IPr3oJS3os0sKInm5hzPGD9TuCyBFwjRnM82HemNwz8Mony4ZbeG8nh X-Received: by 2002:a17:907:b610:b0:7ad:80cd:67b4 with SMTP id vl16-20020a170907b61000b007ad80cd67b4mr7349872ejc.48.1670633345086; Fri, 09 Dec 2022 16:49:05 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1670633345; cv=none; d=google.com; s=arc-20160816; b=ImfxTUfsKKNVOnQjtbE2dSDPhBQCtbMUOjcbAobWSA0pmuwrPcbFD+TgkFWkg5Ix82 e+KB/VYUmwcdLq9fnyxMMkRWyWgOpvp+LWzp7S9o8QSrbUrxDmdmlCTQ/Tmg37bd5wTe s3H/k6ucWUYGmwr/7tVh3ahjjmiBYGUi5Ul4+xPCCh+I88JFRBpgwtzlnCXaQa1MSXL6 /XRmc7cSaDh/Z2DfZdyWsel6YtxA99uMic3o9M2859cXB1RHYLvIXV/X59edCoJD6x1t tZ61hJGsDbDwbVkCg+MqLkw7xFIrL5WcoXQ6iyve6L++59dA6TSpMuixkJcrTwAtGmBy Z4zw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:reply-to:list-subscribe :list-help:list-post:list-archive:list-unsubscribe:list-id :precedence:subject:mime-version:message-id:date:to:from :dkim-signature:delivered-to; bh=JaYE1TPPYfjkSHwEU8LXwbk6UYh6ac8IbN/xV0acKn0=; b=pK08PzgptCU1F4Wpr60atpbxmh/4eu8aGWQsJRRJLy7PRJyQKbxz+CvRX3gUygbst8 VD80yVYhb4pdSDMBvspICxCyg5pAyruS1vOXnEQUwHR81rpA3f/TBwn7daYJ7qjF3fjN SbqEQnH3BLGFxdqV1qToGjnQPM8EDHoDDdxFFAs7Fz7GLo/B+BxrMmNYh8dFX3x1FVki TY+tmkWuKch4ckt6aBhu/BJyCs6M7H1VbqWm5xBArE1nH05yyOO0TAPPu4CY92hoyAmu +vZqTuit9R9Ta5KKzDgSsPYYxVZJdFcdYo9J+DFHjqEppNlQbQYKmBYMBFPhv43DlD0o HyAg== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20210112 header.b=d2Mvx4gK; 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 wf4-20020a170907d68400b007af13652caasi916577ejc.325.2022.12.09.16.49.03; Fri, 09 Dec 2022 16:49:05 -0800 (PST) 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=d2Mvx4gK; 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 9C62068BD5C; Sat, 10 Dec 2022 02:49:00 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-ot1-f50.google.com (mail-ot1-f50.google.com [209.85.210.50]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E56F568BC18 for ; Sat, 10 Dec 2022 02:48:53 +0200 (EET) Received: by mail-ot1-f50.google.com with SMTP id x44-20020a05683040ac00b006707c74330eso1655057ott.10 for ; Fri, 09 Dec 2022 16:48:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:to :from:from:to:cc:subject:date:message-id:reply-to; bh=TbH8ZuiGYQEdQi3gWnZTFb2Eg3rHUb9ts6Uzca5S2PQ=; b=d2Mvx4gKka8KRe3PCwgTLmAW1IWVp7i5/GogWnWT2i2k3tBr9wL++OP6pukBRSoW+1 DxhaqD8ksCDuqNrNjiE1ltpgqQCxNVqTIknhtVcjc30nsl5f+x0CZpJMJ3lT7REusERS yqIDbP8hVOHtGsg79L6DsGTTQpYLwGuIrmOEXAbiNLUlW9NQ9eVHh31iIILetDTgdda8 hztjbNj+wm54VbUuU+Z4JRnlFx9bVGz2mOUWDNGQI3ufbHoUhuFIj+jNde1v5MSLD7vk 6E2Va3MUJtugvRnN6x5s3P5VnjG8r8d6sPz15cSoyuH4K915KuZxWp3yTFEmMYLyYTeE 290w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=TbH8ZuiGYQEdQi3gWnZTFb2Eg3rHUb9ts6Uzca5S2PQ=; b=MRHz+oe3oBdyrnSnvrSGYYmtSzGuiLWiQcoEVqmo+yEqzq8JP7d7Ra5gSZD3ndYJgk WhlPtykTEKpqLQ2LxRBLuovfcctxrta67O73FnIIaezXsGGe/A6fMmxVOHfqU91HqJHa Toxxw5fxIelxWHVBAbTNNIoErZsGT6z0q2bbGut//EQaBufMh9PmDTaLbjg8ldkcg+Ic 4VJEvLeP8VwzjoQczByL+ROMqen83pn4Vb0SC0quPRf076D1mv0NeoMX8dMn/91Uz9LX 4u3MMsYdvNWC9fFx+dQWB6xTqVOWaND/ljso+OvsoawWO6uCygmzmA14ryhhLrPEmUx5 oFwQ== X-Gm-Message-State: ANoB5plNslvNYRsjrKgghrEHCZFdOsAjPwXcFIEK6kUHNekqbWppAjl0 z/oPq3geMivqctRymIy1/0KZKciB1BM= X-Received: by 2002:a05:6830:39e3:b0:66f:2d64:da1c with SMTP id bt35-20020a05683039e300b0066f2d64da1cmr4030063otb.9.1670633331429; Fri, 09 Dec 2022 16:48:51 -0800 (PST) Received: from localhost.localdomain (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id t26-20020a9d66da000000b006706247fdbfsm1214842otm.23.2022.12.09.16.48.50 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 09 Dec 2022 16:48:50 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Fri, 9 Dec 2022 21:48:43 -0300 Message-Id: <20221210004843.4035-1-jamrial@gmail.com> X-Mailer: git-send-email 2.38.1 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH] avformat/oggenc: ignore empty packets 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: dZSdA0gMwX5k Some encoders, like flac, can send side data only packets at the end. Eventually, said extradata update should ideally be used to update the header when writting to seekable output, but for now, ignore them. Should fix the undefined behavior of passing NULL to memcpy(). Signed-off-by: James Almer --- libavformat/oggenc.c | 2 +- tests/ref/lavf/ogg | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/libavformat/oggenc.c b/libavformat/oggenc.c index ae0705ba54..5003314adb 100644 --- a/libavformat/oggenc.c +++ b/libavformat/oggenc.c @@ -687,7 +687,7 @@ static int ogg_write_packet(AVFormatContext *s, AVPacket *pkt) { int i; - if (pkt) + if (pkt && pkt->size) return ogg_write_packet_internal(s, pkt); for (i = 0; i < s->nb_streams; i++) { diff --git a/tests/ref/lavf/ogg b/tests/ref/lavf/ogg index 3ac10e6f7c..0796ff568a 100644 --- a/tests/ref/lavf/ogg +++ b/tests/ref/lavf/ogg @@ -1,3 +1,3 @@ -81b9366cacb23644c2803585dced9996 *tests/data/lavf/lavf.ogg +507a906a705d16f3a3b0c4114c738110 *tests/data/lavf/lavf.ogg 13516 tests/data/lavf/lavf.ogg tests/data/lavf/lavf.ogg CRC=0x3a1da17e