The _refundETH
function uses the transfer
method to send Ether to users. This method has been deprecated due to its hard-coded gas stipend of 2300, which can cause transactions to fail if the recipient's address includes higher gas usage in their fallback or receive function. This issue can result in users being unable to withdraw their Ether, leaving funds stuck in the contract.
Ether Stuck in Contract: Users may be unable to successfully withdraw their Ether.
Reduced Usability: Legitimate withdrawals fail, frustrating users and damaging trust in the contract.
manual review
Replace the transfer method with the call method, which allows specifying the gas limit dynamically and ensures compatibility with a broader range of recipient addresses.
Updated _refundETH Function:
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.