Inadequate Error Handling in Contract Deployment which would cause loss of funds
In the deployProxyAndDistribute function, the _deployProxy function is called to create a proxy contract. However, the _deployProxy function does not include a check for the case where contract deployment fails and returns address 0 (the null address). If such a deployment failure occurs, the _distribute function is subsequently called with address 0, which can result in unexpected behavior.
The impact of this issue is that if the _deployProxy function fails to create a proxy contract and returns address 0, the _distribute function will send the funds to address 0. This can lead to a situation where users expect prizes to be distributed but they are lost forever, potentially causing financial losses.
you can see here
that this code is sending eth to the proxy address and the proxy address is actually coming from
this line of deployProxyAndDistribute() function.
which is then sending proxy address to the following Line
Manual Review
Make sure to check the return value when creating the proxy address
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.