The PuppyRaffle::constructor() function lacks a zero-check for feeAddress.
The constructor does not check wether the feeAddress is different from 0 upon deployment.
Such a case would mean that 20% of the fees would be lost forever upon raffle selectWinner() and withdrawFees() completion.
20% of the fees would be lost. It's not a hacking/stealing money case scenario, just a bad handling of money.
Constructor is only called once, while deploying. An owner who would accidentally input 0x0000000000000000000000000000000000000000 as a fee address in quite unlikely.
VScode
Slither
Add a require into the constructor like so:
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.