PR #20985 opened by GXTX URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/20985 Patch URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/20985.patch
Fixes: #20982 This doesn't appear with every XMV. >From 797d63a4d77ab06dafedb4d76a8393481bcc7b2f Mon Sep 17 00:00:00 2001 From: wutno <[email protected]> Date: Thu, 20 Nov 2025 16:19:49 -0500 Subject: [PATCH] avformat/xmv: Handle zero sized packet at end of file --- libavformat/xmv.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/libavformat/xmv.c b/libavformat/xmv.c index ed59f7b85b..63ae4a05a7 100644 --- a/libavformat/xmv.c +++ b/libavformat/xmv.c @@ -417,6 +417,12 @@ static int xmv_fetch_new_packet(AVFormatContext *s) /* Seek to it */ xmv->this_packet_offset = xmv->next_packet_offset; if (avio_seek(pb, xmv->this_packet_offset, SEEK_SET) != xmv->this_packet_offset) + /* It's possible the packet we're about to work on has no size. This can + * happen when it's the last packet of the XMV. So, let's check if we're + * at the end of the file again and gracefully close out. + */ + if (xmv->this_packet_offset == xmv->next_packet_offset) + return AVERROR_EOF; return AVERROR(EIO); /* Update the size */ -- 2.49.1 _______________________________________________ ffmpeg-devel mailing list -- [email protected] To unsubscribe send an email to [email protected]
