SmartVaultManagerV5 inherits both ERC721Upgradeable and OwnableUpgradeable. However, the SmartVaultManagerV5 does not initialize either of these parent contracts. This can lead to broken functionality in the SmartVaultManagerV5 when it comes to determining ownership and details about the ERC721 token.
SmartVaultManagerV5 does not have an initializer function nor calls __ERC721_init
or __Ownable_init
.
Ownership and ERC721 token details are broken due to initialization never being called.
Manual Review
Add an initializer function that calls both __Ownable_init
and __ERC721_init
inside an initialize function. The protocol will have to be sure to call initialize within the same transaction that the contract is deployed.
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.