diff options
author | James Almer <jamrial@gmail.com> | 2022-12-09 21:48:43 -0300 |
---|---|---|
committer | James Almer <jamrial@gmail.com> | 2022-12-27 11:03:18 -0300 |
commit | 18f24527eb4b520585e55f922cdbc234aa9f0f18 (patch) | |
tree | beed668e491735510dd137b7d03900c583ddb14e | |
parent | cd9dd0300639689630171893b3dfb6c9ba63a692 (diff) |
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@gmail.com>
-rw-r--r-- | libavformat/oggenc.c | 2 | ||||
-rw-r--r-- | 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 |