diff --git a/core/vm/evm.go b/core/vm/evm.go index 9c39137b21..58e59dc120 100644 --- a/core/vm/evm.go +++ b/core/vm/evm.go @@ -468,6 +468,10 @@ func (evm *EVM) create(caller ContractRef, codeAndHash *codeAndHash, gas uint64, } evm.Context.Transfer(evm.StateDB, caller.Address(), address, value) + // Push the call to the call stack. + evm.callStack.Push(typ, address, nil) + defer evm.callStack.Pop() + // Initialise a new contract and set the code that is to be used by the EVM. // The contract is a scoped environment for this execution context only. contract := NewContract(caller, AccountRef(address), value, gas)