Closed code423n4 closed 2 years ago
Dravee
SLOADs are expensive
Here, lockedAmount can be loaded twice from storage:
lockedAmount
File: PoolTemplate.sol 846: function utilizationRate() public view override returns (uint256 _rate) { 847: if (lockedAmount > 0) { 848: return (lockedAmount * MAGIC_SCALE_1E6) / totalLiquidity(); 849: } else { 850: return 0; 851: } 852: }
VS Code
Cache lockedAmount in a variable
dupe of #343 - warden is asked to group similar optimizations (cacheing) in the same findings.
Handle
Dravee
Vulnerability details
Impact
SLOADs are expensive
Proof of Concept
Here,
lockedAmount
can be loaded twice from storage:Tools Used
VS Code
Recommended Mitigation Steps
Cache
lockedAmount
in a variable