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.