Core Contracts

Regnum Aurum Acquisition Corp
HardhatReal World AssetsNFT
77,280 USDC
View results
Submission Details
Severity: medium
Invalid

Missing Check for `ProposalState.Canceled`

Summary

The cancel function does not check if the proposal is already canceled before proceeding with the cancellation logic. This could lead to redundant cancellations and unnecessary state changes.

Vulnerability Details

  • The function checks if the proposal is in the Executed state but does not check if it is already in the Canceled state.

  • If a proposal is already canceled, calling cancel again will still set proposal.canceled = true and emit an event, even though no state change occurs.

Impact

  • Redundant cancellations could emit misleading events or cause confusion for off-chain systems monitoring the contract.

  • While not critical, this could lead to inefficiencies and unnecessary gas consumption.

Tools Used

Manual Review

Recommendations

Add a check to ensure the proposal is not already canceled before proceeding with the cancellation logic.

if (proposal.canceled) {
revert ProposalAlreadyCanceled(proposalId);
}
Updates

Lead Judging Commences

inallhonesty Lead Judge 7 months ago
Submission Judgement Published
Invalidated
Reason: Non-acceptable severity
inallhonesty Lead Judge 7 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.

Give us feedback!