Its not known issue about reentrancy! This issue about read only reentrancy.
More info about this type of attack - https://medium.com/@zokyo.io/read-only-reentrancy-attacks-understanding-the-threat-to-your-smart-contracts-99444c0a7334
Reentransy of this type do not imply a repeated call of the same function, but a call to another contract (maybe even a different protocol) and at this moment another contract will receive incorrect data if it calls the view function of the SmartVaultManagerV5 contract.
Example:
User deploy own contract (rContract.sol, for example)
user call rContract.sol.start() -> SmartVaultManagerV5.mint() -> rContract.onERC721Received()
and rContract in onERC721Received function could call other protocol and this protocol could call in this moment SmartVaultManagerV5.totalSupply()
and get wrong count of minted tokens. Because totalSupply() function return value of lastToken variable.
But this variable updated only after _safeMint() function finished execution.
Other contracts(protocols) could read wrong data from SmartVaultManagerV5 contract, while minting new vault.
Manual review
At first, update value in lastToken variable
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.