From 1d5144465f1ac8012177800186b7b3c0b210e100 Mon Sep 17 00:00:00 2001 From: Marius van der Wijden Date: Thu, 26 Sep 2024 15:41:59 +0200 Subject: [PATCH] core/vm: fix create rules --- core/vm/evm.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/core/vm/evm.go b/core/vm/evm.go index 73a3a78b63..f5563a031a 100644 --- a/core/vm/evm.go +++ b/core/vm/evm.go @@ -579,16 +579,16 @@ func (evm *EVM) initNewContract(contract *Contract, address common.Address, valu return ret, fmt.Errorf("%w: %v", ErrInvalidEOFInitcode, ErrLegacyCode) } // Reject EOF deployment from legacy. - if isInitcodeEOF && hasEOFMagic(ret) { + if !isInitcodeEOF && hasEOFMagic(ret) { return ret, ErrLegacyCode } // Reject code starting with 0xEF if EIP-3541 is enabled. if len(ret) >= 1 && HasEOFByte(ret) { if evm.chainRules.IsPrague && isInitcodeEOF { - // Don't reject EOF contracts after Shanghai + // Don't reject EOF contracts after Prague } else if evm.chainRules.IsLondon { - err = ErrInvalidCode + return ret, ErrInvalidCode } }