The RToken.transfer() function computes the transfer amount scaledAmount using the liquidity index from the LendingPool. However, the liquidity index may be stale and not updated, leading to an incorrect transfer amount.
The RToken.transfer() function calculates the transfer amount scaledAmount using ILendingPool(_reservePool).getNormalizedIncome().
However, the LendingPool.getNormalizedIncome() function merely returns reserve.liquidityIndex without updating it. Consequently, this return value may not accurately reflect the current liquidity index, resulting in an incorrect transfer amount.
The transfer amount may be incorrect.
Manual review
Ensure that the reserve state of the LendingPool is updated before executing a transfer.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.