Snow.sol correctly imports and uses SafeERC20 for all token interactions except one:
Likelihood:
With the canonical WETH implementation (which does return a bool), this does not cause issues in practice.
The risk materialises if the WETH address is ever pointed at a non-standard token, or if the contract is deployed with a custom WETH that follows the "no return value" pattern.
Impact:
A failed WETH transfer goes undetected — the collector believes fees were collected but the WETH stays in the Snow contract.
Accumulated protocol fees can be permanently locked if the transfer silently fails.
Use safeTransfer consistently, and emit the declared FeeCollected event:
The contest is live. Earn rewards by submitting a finding.
Submissions are being reviewed by our AI judge. Results will be available in a few minutes.
View all submissionsThe contest is complete and the rewards are being distributed.