]> git.sesse.net Git - ffmpeg/blobdiff - libavformat/mov.c
avformat/mov: check for pts overflow in mov_read_sidx()
[ffmpeg] / libavformat / mov.c
index 9ca1ac89a86f767d5448a49def40593bf942075c..bf29060973af8c5407f790ded2a60919ad7e58e2 100644 (file)
@@ -5111,7 +5111,9 @@ static int mov_read_sidx(MOVContext *c, AVIOContext *pb, MOVAtom atom)
         if (frag_stream_info)
             frag_stream_info->sidx_pts = timestamp;
 
-        if (av_sat_add64(offset, size) != offset + size)
+        if (av_sat_add64(offset, size) != offset + size ||
+            av_sat_add64(pts, duration) != pts + (uint64_t)duration
+        )
             return AVERROR_INVALIDDATA;
         offset += size;
         pts += duration;