Commit de7d2906 authored by Michael Niedermayer's avatar Michael Niedermayer

av_d2q: Fix infinity check

The old check would fail on huge but not infinite values
and the later code could then fail to handle them correctly in
some cases.
Signed-off-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parent 8caf2da3
......@@ -110,7 +110,7 @@ AVRational av_d2q(double d, int max)
int64_t den;
if (isnan(d))
return (AVRational) { 0,0 };
if (isinf(d))
if (fabs(d) > INT_MAX + 3LL)
return (AVRational) { d < 0 ? -1 : 1, 0 };
exponent = FFMAX( (int)(log(fabs(d) + 1e-20)/LOG2), 0);
den = 1LL << (61 - exponent);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment