The usage of _safeMint guarantees that the receiver to address is either a smart contract that implements IERC721Receiver.onERC721Receivedor an EOA
// Effect: mint the NFT to the recipient.
_mint({ to: params.recipient, tokenId: streamId });
According to OpenZeppelin usage of _mintis discouraged, use _safeMintwhenever possible.
See the docs: https://docs.openzeppelin.com/contracts/4.x/api/token/erc721#ERC721-_safeMint-address -uint256-
https://github.com/Cyfrin/2024-05-Sablier/issues/1
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.