X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavformat%2Fpjsdec.c;h=8a5cc04f8411e4370b64de842497c92deaeab8b5;hb=262eef6b899ca39f80296e6eb701e895549d8a83;hp=bb587b569a1b7362a33578772c3bfb48fd0d1254;hpb=ce47f1589e9f5a6cf8372a269bdd862ff0cc3f91;p=ffmpeg diff --git a/libavformat/pjsdec.c b/libavformat/pjsdec.c index bb587b569a1..8a5cc04f841 100644 --- a/libavformat/pjsdec.c +++ b/libavformat/pjsdec.c @@ -33,7 +33,7 @@ typedef struct { FFDemuxSubtitlesQueue q; } PJSContext; -static int pjs_probe(AVProbeData *p) +static int pjs_probe(const AVProbeData *p) { char c; int64_t start, end; @@ -55,6 +55,8 @@ static int64_t read_ts(char **line, int *duration) if (sscanf(*line, "%"SCNd64",%"SCNd64, &start, &end) == 2) { *line += strcspn(*line, "\""); *line += !!**line; + if (end < start || end - (uint64_t)start > INT_MAX) + return AV_NOPTS_VALUE; *duration = end - start; return start; }