Core Contracts

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

Redundant Self-Transfer in `emergencyRevoke` Function

Summary

The emergencyRevoke function in RaacReleaseOchestrator.sol performs an unnecessary self-transfer of unreleasedAmount tokens to the contract’s own address. Since the tokens are already held by the contract, this operation is redundant and serves no purpose, potentially confusing future maintainers.

Vulnerability Details

Code Snippet

if (unreleasedAmount > 0) {
raacToken.transfer(address(this), unreleasedAmount); // @audit-info Redundant self-transfer
emit EmergencyWithdraw(beneficiary, unreleasedAmount);
}

Impact

  • redundancy of transfer.

Recommendations

Remove the redundant transfer call:

if (unreleasedAmount > 0) {
emit EmergencyWithdraw(beneficiary, unreleasedAmount); // No need for transfer
}

This simplifies the function.

Updates

Lead Judging Commences

inallhonesty Lead Judge 7 months ago
Submission Judgement Published
Validated
Assigned finding tags:

RAACReleaseOrchestrator::emergencyRevoke sends revoked tokens to contract address with no withdrawal mechanism, permanently locking funds

inallhonesty Lead Judge 7 months ago
Submission Judgement Published
Validated
Assigned finding tags:

RAACReleaseOrchestrator::emergencyRevoke sends revoked tokens to contract address with no withdrawal mechanism, permanently locking funds

Support

FAQs

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

Give us feedback!