aboutsummaryrefslogtreecommitdiffstats
path: root/core/vm/runtime/runtime.go
diff options
context:
space:
mode:
Diffstat (limited to 'core/vm/runtime/runtime.go')
-rw-r--r--core/vm/runtime/runtime.go14
1 files changed, 7 insertions, 7 deletions
diff --git a/core/vm/runtime/runtime.go b/core/vm/runtime/runtime.go
index cf46603db..94265626f 100644
--- a/core/vm/runtime/runtime.go
+++ b/core/vm/runtime/runtime.go
@@ -105,17 +105,17 @@ func Execute(code, input []byte, cfg *Config) ([]byte, *state.StateDB, error) {
cfg.State, _ = state.New(common.Hash{}, db)
}
var (
- vmenv = NewEnv(cfg, cfg.State)
- sender = cfg.State.CreateAccount(cfg.Origin)
- receiver = cfg.State.CreateAccount(common.StringToAddress("contract"))
+ address = common.StringToAddress("contract")
+ vmenv = NewEnv(cfg, cfg.State)
+ sender = vm.AccountRef(cfg.Origin)
)
+ cfg.State.CreateAccount(address)
// set the receiver's (the executing contract) code for execution.
- receiver.SetCode(crypto.Keccak256Hash(code), code)
-
+ cfg.State.SetCode(address, code)
// Call the code with the given configuration.
ret, _, err := vmenv.Call(
sender,
- receiver.Address(),
+ common.StringToAddress("contract"),
input,
cfg.GasLimit,
cfg.Value,
@@ -137,7 +137,7 @@ func Create(input []byte, cfg *Config) ([]byte, common.Address, error) {
}
var (
vmenv = NewEnv(cfg, cfg.State)
- sender = cfg.State.CreateAccount(cfg.Origin)
+ sender = vm.AccountRef(cfg.Origin)
)
// Call the code with the given configuration.