mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-04-24 17:12:34 +02:00
avformat/utils: avoid overflow in update_stream_timings() with huge durations
Fixes: usan_granule_overflow Found-by: Thomas Guilbert <tguilbert@google.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
parent
af56d0dffa
commit
2be3007ed5
@ -2491,7 +2491,7 @@ static void update_stream_timings(AVFormatContext *ic)
|
|||||||
end_time1 = av_rescale_q_rnd(st->duration, st->time_base,
|
end_time1 = av_rescale_q_rnd(st->duration, st->time_base,
|
||||||
AV_TIME_BASE_Q,
|
AV_TIME_BASE_Q,
|
||||||
AV_ROUND_NEAR_INF|AV_ROUND_PASS_MINMAX);
|
AV_ROUND_NEAR_INF|AV_ROUND_PASS_MINMAX);
|
||||||
if (end_time1 != AV_NOPTS_VALUE) {
|
if (end_time1 != AV_NOPTS_VALUE && start_time1 <= INT64_MAX - end_time1) {
|
||||||
end_time1 += start_time1;
|
end_time1 += start_time1;
|
||||||
end_time = FFMAX(end_time, end_time1);
|
end_time = FFMAX(end_time, end_time1);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user