In the auction contract, auctionToken.transfer
is used instead of safeTransfer
, when some unexpected behavior happens and transfer fails, it would cause user to not receive rewards, and the user cannot claim again.
In the claimTokens
function:
we see transfer
is used, for some tokens, upon transfer failure, they do not revert, instead return false, in this case, the function would finish executing normally, but user would not receive their shares of prize, and their bid status would be cleared to zero, preventing them from claiming again.
For some tokens, in the case of transfer failure, user will not receive their shares of auction token, cause loss of funds.
Manual review
Use safeTransfer
for token transfer instead
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.