diff options
Diffstat (limited to 'libavutil/mathematics.c')
-rw-r--r-- | libavutil/mathematics.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/libavutil/mathematics.c b/libavutil/mathematics.c index 81841f79d2..48373bf759 100644 --- a/libavutil/mathematics.c +++ b/libavutil/mathematics.c @@ -188,14 +188,14 @@ simple_round: int64_t av_add_stable(AVRational ts_tb, int64_t ts, AVRational inc_tb, int64_t inc) { - AVRational step = av_mul_q(inc_tb, (AVRational) {inc, 1}); + inc_tb = av_mul_q(inc_tb, (AVRational) {inc, 1}); - if (av_cmp_q(step, ts_tb) < 0) { + if (av_cmp_q(inc_tb, ts_tb) < 0) { //increase step is too small for even 1 step to be representable return ts; } else { - int64_t old = av_rescale_q(ts, ts_tb, step); - int64_t old_ts = av_rescale_q(old, step, ts_tb); - return av_rescale_q(old + 1, step, ts_tb) + (ts - old_ts); + int64_t old = av_rescale_q(ts, ts_tb, inc_tb); + int64_t old_ts = av_rescale_q(old, inc_tb, ts_tb); + return av_rescale_q(old + 1, inc_tb, ts_tb) + (ts - old_ts); } } |