Host can withdraw all tokens before the deadline, which can prevent participants from receiving refunds. This can also be a potential fraud activity by whoever is the host.
In the withdraw()there is no check on the deadline before withdrawal meaning the hostcan withdraw the current balance of the contract (including the participants) before the deadline.
If the current hostis a scammer, he hostcan just withdraw all the funds in the contract and not decide not to go with the dinner plan. Also, users who decide to get a refund won't be able to get their tokens or ETH back since the contract doesn't have any funds in it.
Manual review
The deadline modifier should be add the the withdraw()
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.