mirror of https://git.ffmpeg.org/ffmpeg.git
avformat/oggdec: Fix integer overflow with invalid pts
If negative pts are possible for some codecs in ogg then the code needs to be changed to use signed values. Found-by: Thomas Guilbert <tguilbert@google.com> Fixes: clusterfuzz_usan-2016-08-02 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
parent
6cd9a8b67a
commit
c5cc3b08e5
|
@ -162,6 +162,11 @@ ogg_gptopts (AVFormatContext * s, int i, uint64_t gp, int64_t *dts)
|
||||||
if (dts)
|
if (dts)
|
||||||
*dts = pts;
|
*dts = pts;
|
||||||
}
|
}
|
||||||
|
if (pts > INT64_MAX && pts != AV_NOPTS_VALUE) {
|
||||||
|
// The return type is unsigned, we thus cannot return negative pts
|
||||||
|
av_log(s, AV_LOG_ERROR, "invalid pts %"PRId64"\n", pts);
|
||||||
|
pts = AV_NOPTS_VALUE;
|
||||||
|
}
|
||||||
|
|
||||||
return pts;
|
return pts;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue