From 34739158068c3514ca0d3ab8648ca8eba9fcb60d Mon Sep 17 00:00:00 2001 From: Arsenii Kulikov Date: Tue, 16 Jul 2024 08:07:02 +0800 Subject: [PATCH] fix: correctly calculate eofcreate address --- crates/revm/src/context/evm_context.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/crates/revm/src/context/evm_context.rs b/crates/revm/src/context/evm_context.rs index 5ca0dbf299..fe684d32b8 100644 --- a/crates/revm/src/context/evm_context.rs +++ b/crates/revm/src/context/evm_context.rs @@ -408,8 +408,9 @@ impl EvmContext { // can't happen on mainnet. return return_error(InstructionResult::Return); }; + let old_nonce = nonce - 1; - let created_address = created_address.unwrap_or_else(|| inputs.caller.create(nonce)); + let created_address = created_address.unwrap_or_else(|| inputs.caller.create(old_nonce)); // created address is not allowed to be a precompile. if self.precompiles.contains(&created_address) {