User can't transfer all amount of claimed rewards.
Vulnerability Detail
There is developer error in BasePool.claimRewards function. It's not possible to transfer value that less then 2. See here. That means that when amount nonEscrowedRewardAmount == 1 it will not be transferred to receiver and receiver will lost it.
rvierdiiev
medium
User can't transfer all amount of claimed rewards
Summary
User can't transfer all amount of claimed rewards.
Vulnerability Detail
There is developer error in
BasePool.claimRewards
function. It's not possible to transfer value that less then 2. See here. That means that when amountnonEscrowedRewardAmount == 1
it will not be transferred to receiver and receiver will lost it.Impact
Receiver lose funds.
Code Snippet
Tool used
Manual Review
Recommendation
Change check condition to
if(nonEscrowedRewardAmount > 0)
.