The redeemMemorabilia()
function contains an off-by-one error that prevents the final NFT in each memorabilia collection from being minted.
In the constructor of the MemorabiliaCollection
, currentItemId
is initialized to 1
, and minting continues as long as:
Likelihood:
This issue will occur every time a user attempts to redeem the final NFT in any memorabilia collection, since the check fails on the last item (currentItemId == maxSupply
).
Impact:
Last NFT in each collection cannot be minted
Direct loss of 1 unit of revenue per collection
Users unable to complete their NFT sets (UX damage)
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.