The contract does not take into account that sending tokens may not be successful
Sponsor said, that some tokens could be added in accepted tokens list.
Some tokens have pause mode. In this mode, transfer tokens is not possible.
So, if one of token will be with pause mode ON, and someone try call liquidation function, tx will revert, because transfer function in token contract was reveer(pause ON).
Not being able to transfer 1 token should not affect all tokens - this is bad for the protocol.
SmartVaultManagerV5.liquidateVault() -> vault.liquidate() -> in for loop will be called function liquidateERC20 with params like token address.
and if safeTransfer will revert, liquidation will not be successful at all.
Liquidation may not take place because some of the tokens may be on pause
Manual review
Add try/catch block in liquidateERC20 functoin, for dont revert liquidation, when safeTransfer function of any token will revert.
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.