If a producer list's their token and then gives it as a present MartenitsaMarketplace.sol::makePresent
then that token is attempted to be bought, it can revert with an arithmetic underflow error.
If a producer creates 1 MartenitsaToken, the MartenitsaToken.sol::countMartenitsaTokensOwner
mapping will be 1. Then if they list it for sale MartenitsaMarketplace.sol::listMartenitsaForSale
and give it as a gift, MartenitsaMarketplace.sol::makePresent
the countMartenitsaTokensOwner
mapping will be 0. If someone goes to buy the token, the countMartenitsaTokensOwner
mapping for the producer would be -1 and it would revert. This means nobody could ever buy that Token.
This test reverts with an arithmetic underflow error showing that the MartenitsaToken.sol::countMartenitsaTokensOwner
mapping for the producer can become negative one.
--Foundry
It is recommended to cancel any current listings of a MartenitsaToken if it is being given as a present.
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.