[FFmpeg-cvslog] avformat/oggenc: ignore empty packets

James Almer git at videolan.org
Tue Dec 27 16:05:25 EET 2022


ffmpeg | branch: master | James Almer <jamrial at gmail.com> | Fri Dec  9 21:48:43 2022 -0300| [18f24527eb4b520585e55f922cdbc234aa9f0f18] | committer: James Almer

avformat/oggenc: ignore empty packets

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 <jamrial at gmail.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=18f24527eb4b520585e55f922cdbc234aa9f0f18
---

 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



More information about the ffmpeg-cvslog mailing list