mirror of
https://github.com/Instadapp/aave-protocol-v2.git
synced 2024-07-29 21:47:30 +00:00
Fixed wad functions in WadRayMath
This commit is contained in:
parent
86d25393e9
commit
4e1a8c29bd
|
@ -60,7 +60,7 @@ library WadRayMath {
|
||||||
|
|
||||||
uint256 result = a * b + halfWAD;
|
uint256 result = a * b + halfWAD;
|
||||||
|
|
||||||
require((result - halfWAD) / a == b, Errors.MULTIPLICATION_OVERFLOW);
|
require(result >= halfWAD && (result - halfWAD) / a == b, Errors.MULTIPLICATION_OVERFLOW);
|
||||||
|
|
||||||
return result / WAD;
|
return result / WAD;
|
||||||
}
|
}
|
||||||
|
@ -76,13 +76,9 @@ library WadRayMath {
|
||||||
|
|
||||||
uint256 halfB = b / 2;
|
uint256 halfB = b / 2;
|
||||||
|
|
||||||
uint256 result = a * WAD;
|
uint256 result = a * WAD + halfB;
|
||||||
|
|
||||||
require(result / WAD == a, Errors.MULTIPLICATION_OVERFLOW);
|
require(result >= halfB && (result - halfB) / WAD == a, Errors.MULTIPLICATION_OVERFLOW);
|
||||||
|
|
||||||
result += halfB;
|
|
||||||
|
|
||||||
require(result >= halfB, Errors.ADDITION_OVERFLOW);
|
|
||||||
|
|
||||||
return result / b;
|
return result / b;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user