transferFrom Calls Are Used Instead Of SafeERC20The contract calls usdc.transferFrom(...) directly in mintNft() and buy() and manually checks the return value. This is less robust than using SafeERC20.safeTransferFrom, since some ERC20 implementations do not return values consistently.
Likelihood:
The issue appears whenever the contract interacts with a token that does not strictly follow the standard ERC20 return-value behavior.
Impact:
Token transfers may behave unexpectedly or fail to integrate cleanly with non-standard ERC20 implementations.
The issue is visible directly in mintNft() and buy(), where raw transferFrom calls are used instead of SafeERC20.safeTransferFrom.
Use SafeERC20.safeTransferFrom consistently for inbound token transfers.
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.
The contest is complete and the rewards are being distributed.