Skip to content

[pallet-revive] Reject re-entrant CREATE2 at an in-construction address#12645

Open
Nathy-bajo wants to merge 2 commits into
paritytech:masterfrom
Nathy-bajo:fix/revive-reentrant-create2-collision
Open

[pallet-revive] Reject re-entrant CREATE2 at an in-construction address#12645
Nathy-bajo wants to merge 2 commits into
paritytech:masterfrom
Nathy-bajo:fix/revive-reentrant-create2-collision

Conversation

@Nathy-bajo

Copy link
Copy Markdown
Contributor

Fixes #12639 by rejecting a nested instantiate whose target address is already being constructed by an ancestor frame, closing the re-entrant CREATE2 collision that let two constructors run for one account and permanently leaked its consumer/refcount and storage deposit.

@Nathy-bajo
Nathy-bajo requested a review from a team as a code owner July 13, 2026 17:13
@Nathy-bajo

Copy link
Copy Markdown
Contributor Author

/cmd label T7-smart_contracts

@paritytech-cmd-bot-polkadot-sdk paritytech-cmd-bot-polkadot-sdk Bot added the T7-smart_contracts This PR/Issue is related to smart contracts. label Jul 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

T7-smart_contracts This PR/Issue is related to smart contracts.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[pallet-revive] Re-entrant CREATE2 bypasses the duplicate contract collision check

1 participant