[FFmpeg-devel] [PATCH] avformat/iff: fix EOF check
James Almer
jamrial at gmail.com
Tue Aug 5 01:54:41 EEST 2025
The check to return on EOF should not be inside a block that will not be entered after reaching EOF.
Should fix "libavcodec/bytestream.h:144:27: runtime error: applying zero offset to null pointer".
Signed-off-by: James Almer <jamrial at gmail.com>
---
libavformat/iff.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/libavformat/iff.c b/libavformat/iff.c
index 4ff10beb38..44ba5a9023 100644
--- a/libavformat/iff.c
+++ b/libavformat/iff.c
@@ -969,9 +969,6 @@ static int iff_read_packet(AVFormatContext *s,
uint32_t chunk_id, chunk_id2;
while (!avio_feof(pb)) {
- if (avio_feof(pb))
- return AVERROR_EOF;
-
orig_pos = avio_tell(pb);
chunk_id = avio_rl32(pb);
data_size = avio_rb32(pb);
@@ -988,6 +985,9 @@ static int iff_read_packet(AVFormatContext *s,
avio_skip(pb, data_size);
}
}
+ if (pb->eof_reached)
+ return AVERROR_EOF;
+
ret = av_get_packet(pb, pkt, data_size);
pkt->stream_index = iff->video_stream_index;
pkt->pos = orig_pos;
--
2.50.1
More information about the ffmpeg-devel
mailing list