From 0d6ed6891044d2cb361c1bf14daf9eea51eb972a Mon Sep 17 00:00:00 2001 From: Jared Wasinger Date: Wed, 15 Oct 2025 16:05:09 +0800 Subject: [PATCH] core/vm: don't call SetCode on target of contract creation if initcode didn't return anything. --- core/vm/evm.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/core/vm/evm.go b/core/vm/evm.go index 88ef1cf121..8975c791c8 100644 --- a/core/vm/evm.go +++ b/core/vm/evm.go @@ -601,7 +601,9 @@ func (evm *EVM) initNewContract(contract *Contract, address common.Address) ([]b } } - evm.StateDB.SetCode(address, ret, tracing.CodeChangeContractCreation) + if len(ret) > 0 { + evm.StateDB.SetCode(address, ret, tracing.CodeChangeContractCreation) + } return ret, nil }