[FFmpeg-cvslog] avformat/usmdec: do not return 0 when no packet was produced

Michael Niedermayer git at videolan.org
Mon Oct 16 03:25:51 EEST 2023


ffmpeg | branch: master | Michael Niedermayer <michael at niedermayer.cc> | Thu Oct  5 14:38:08 2023 +0200| [fff875a7f4d36874733598fd7c0dc81136e1ed05] | committer: Michael Niedermayer

avformat/usmdec: do not return 0 when no packet was produced

Fixes: Assertion pkt->stream_index < (unsigned)s->nb_streams && "Invalid stream index.\n" failed at libavformat/demux.c:617
Fixes: 62498/clusterfuzz-testcase-minimized-ffmpeg_dem_USM_fuzzer-4734740995112960

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>

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

 libavformat/usmdec.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavformat/usmdec.c b/libavformat/usmdec.c
index 1665eb8e55..ee403e7a84 100644
--- a/libavformat/usmdec.c
+++ b/libavformat/usmdec.c
@@ -361,7 +361,7 @@ static int64_t parse_chunk(AVFormatContext *s, AVIOContext *pb,
     ret = avio_skip(pb, FFMAX(0, chunk_size - (ret - chunk_start)));
     if (ret < 0)
         return ret;
-    return 0;
+    return FFERROR_REDO;
 }
 
 static int usm_read_packet(AVFormatContext *s, AVPacket *pkt)



More information about the ffmpeg-cvslog mailing list