GivingThanks

First Flight #28
Beginner FriendlyFoundry
100 EXP
View results
Submission Details
Severity: low
Invalid

Redundant State Checks in `CharityRegistry.sol`

Description: Multiple require statements with state checks can be combined to save gas.

function verifyCharity(address charity) public {
require(msg.sender == admin, "Only admin can verify");
require(registeredCharities[charity], "Charity not registered");
verifiedCharities[charity] = true;
}

Impact:

  • Multiple state accesses

  • Redundant SLOAD operations

Gas Savings: Combining checks: ~2,000 gas per transaction

Recommended Mitigation:

function verifyCharity(address charity) public {
if (msg.sender != admin || !registeredCharities[charity]) {
revert("Unauthorized or not registered");
}
verifiedCharities[charity] = true;
}
Updates

Lead Judging Commences

n0kto Lead Judge 12 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.