nuv: sanitize negative fps rate
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
This commit is contained in:
parent
2884cf205a
commit
5b83b24ccb
@ -175,6 +175,15 @@ static int nuv_header(AVFormatContext *s)
|
|||||||
if (aspect > 0.9999 && aspect < 1.0001)
|
if (aspect > 0.9999 && aspect < 1.0001)
|
||||||
aspect = 4.0 / 3.0;
|
aspect = 4.0 / 3.0;
|
||||||
fps = av_int2double(avio_rl64(pb));
|
fps = av_int2double(avio_rl64(pb));
|
||||||
|
if (fps < 0.0f) {
|
||||||
|
if (s->error_recognition & AV_EF_EXPLODE) {
|
||||||
|
av_log(s, AV_LOG_ERROR, "Invalid frame rate %f\n", fps);
|
||||||
|
return AVERROR_INVALIDDATA;
|
||||||
|
} else {
|
||||||
|
av_log(s, AV_LOG_WARNING, "Invalid frame rate %f, setting to 0.\n", fps);
|
||||||
|
fps = 0.0f;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// number of packets per stream type, -1 means unknown, e.g. streaming
|
// number of packets per stream type, -1 means unknown, e.g. streaming
|
||||||
v_packs = avio_rl32(pb);
|
v_packs = avio_rl32(pb);
|
||||||
|
Loading…
Reference in New Issue
Block a user