Platform: Code4rena
Start Date: 30/03/2022
Pot Size: $30,000 USDC
Total HM: 21
Participants: 38
Period: 3 days
Judge: Michael De Luca
Total Solo HM: 10
Id: 104
League: ETH
Rank: 31/38
Findings: 2
Award: $102.88
🌟 Selected for report: 0
🚀 Solo Findings: 0
65.6376 USDC - $65.64
CoreCollection.initialize() (core-contracts/contracts/CoreCollection.sol#78-97) should emit an event for:
- maxSupply = _maxSupply (core-contracts/contracts/CoreCollection.sol#91)
CoreCollection.initialize()._splitFactory (core-contracts/contracts/CoreCollection.sol#86) lacks a zero-check on :
- splitFactory = _splitFactory (core-contracts/contracts/CoreCollection.sol#95)
CoreCollection.setRoyaltyVault()._royaltyVault (core-contracts/contracts/CoreCollection.sol#185) lacks a zero-check on :
- royaltyVault = _royaltyVault (core-contracts/contracts/CoreCollection.sol#193)
ERC721Payable._handlePayment() (core-contracts/contracts/ERC721Payable.sol#50-56) ignores return value by payableToken.transferFrom() (core-contracts/contracts/ERC721Payable.sol#54)
consider safeTransferFrom to prevent any locks or loss of funds
#0 - sofianeOuafir
2022-04-14T15:03:14Z
In my opinion, the severity level should be 3 (High Risk) duplicate of #52
37.2358 USDC - $37.24
use prefix instead of postfix, ++i is preferred instead of i++ corefactory.sol l#79 corecollection.sol l#279
use !=0 instead of > for unsigned integers corecollection.sol l#161
royaltyvault.sol l#35 mintfee>0 should be mintfee!=0
use prefix to save gas corecollection.sol l#264 change
tokenId = ((startingIndex + totalSupply()) % maxSupply) + 1;
to
tokenId = ++((startingIndex + totalSupply()) % maxSupply);
Not prefer using floating pragma, fixed to some version 0.8.10 or 0.8.4
Change public visiliblitiy to external visibility to save gas