Beginner FriendlySolidity
100 EXP
View results
Submission Details
Severity: medium
Invalid

Incorrect Handling of Zero Balance in withdrawInheritedFunds()

Summary

The function does not check if the contract has a non-zero balance before attempting withdrawals.

Vulnerability Details

If the contract has a zero balance, the function will still attempt to distribute funds, wasting gas.

Impact

Users may pay gas fees for transactions that do nothing.

Tools Used

Manual rEview

Recommendations

Add a check to ensure the contract has a non-zero balance:

if (_asset == address(0)) {
require(address(this).balance > 0, "No Ether balance");
} else {
require(IERC20(_asset).balanceOf(address(this)) > 0, "No token balance");
}
Updates

Lead Judging Commences

0xtimefliez Lead Judge 6 months ago
Submission Judgement Published
Invalidated
Reason: Non-acceptable severity

Support

FAQs

Can't find an answer? Chat with us on Discord, Twitter or Linkedin.