0xsanson
In ConcentratedLiquidityPoolManager, an user can claimReward of a subscribed position.
In order to compute the correct amount, secondsUnclaimed needs to be calculated, but itβs implemented incorrectly:
uint256 secondsUnclaimed = (maxTime - incentive.startTime) << (128 - incentive.secondsClaimed);
This line should be: uint256 secondsUnclaimed = ((maxTime - incentive.startTime) << 128) - incentive.secondsClaimed;.
#Proof of Concept
<https://github.com/sushiswap/trident/blob/c405f3402a1ed336244053f8186742d2da5975e9/contracts/pool/concentrated/ConcentratedLiquidityPoolManager.sol#L110>
editor
Correct the computations.
The text was updated successfully, but these errors were encountered:
All reactions