As a solidity below 0.8 version,it coudn't check automately.And the contract alse don't have a overflow checking.Once oveflow happening,require(address(this).balance == uint256(totalFees), "PuppyRaffle: There are currently players active!"); in withdrawFees fuction will make the totalFee never withdraw.
Likelihood:
Reason 1 // Describe WHEN this will occur (avoid using "if" statements)
Reason 2
Impact:
Impact 1
Impact 2
Replacing totalFees = totalFees + uint64(fee);on 134
with
uint64 newTotalFees = totalFees + uint64(fee); require(newTotalFees >= totalFees, "PuppyRaffle: Overflow occurred"); totalFees = newTotalFees;
The contest is live. Earn rewards by submitting a finding.
Submissions are being reviewed by our AI judge. Results will be available in a few minutes.
View all submissionsThe contest is complete and the rewards are being distributed.