From 024d41d0c2660d8f1dfbeb14921c7109e30493a2 Mon Sep 17 00:00:00 2001 From: Jeffrey Wilcke Date: Wed, 22 Feb 2017 23:29:59 +0100 Subject: core, core/state, core/vm: remove exported account getters (#3618) Removed exported statedb object accessors, reducing the chance for nasty bugs to creep in. It's also ugly and unnecessary to have these methods. --- cmd/evm/main.go | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) (limited to 'cmd/evm/main.go') diff --git a/cmd/evm/main.go b/cmd/evm/main.go index 8af0cebbb..0693d7cd3 100644 --- a/cmd/evm/main.go +++ b/cmd/evm/main.go @@ -29,7 +29,6 @@ import ( "github.com/ethereum/go-ethereum/core/state" "github.com/ethereum/go-ethereum/core/vm" "github.com/ethereum/go-ethereum/core/vm/runtime" - "github.com/ethereum/go-ethereum/crypto" "github.com/ethereum/go-ethereum/ethdb" "github.com/ethereum/go-ethereum/logger/glog" "gopkg.in/urfave/cli.v1" @@ -115,9 +114,13 @@ func run(ctx *cli.Context) error { glog.SetToStderr(true) glog.SetV(ctx.GlobalInt(VerbosityFlag.Name)) - db, _ := ethdb.NewMemDatabase() - statedb, _ := state.New(common.Hash{}, db) - sender := statedb.CreateAccount(common.StringToAddress("sender")) + var ( + db, _ = ethdb.NewMemDatabase() + statedb, _ = state.New(common.Hash{}, db) + address = common.StringToAddress("sender") + sender = vm.AccountRef(address) + ) + statedb.CreateAccount(common.StringToAddress("sender")) logger := vm.NewStructLogger(nil) @@ -166,10 +169,11 @@ func run(ctx *cli.Context) error { }, }) } else { - receiver := statedb.CreateAccount(common.StringToAddress("receiver")) - receiver.SetCode(crypto.Keccak256Hash(code), code) + receiverAddress := common.StringToAddress("receiver") + statedb.CreateAccount(receiverAddress) + statedb.SetCode(receiverAddress, code) - ret, err = runtime.Call(receiver.Address(), common.Hex2Bytes(ctx.GlobalString(InputFlag.Name)), &runtime.Config{ + ret, err = runtime.Call(receiverAddress, common.Hex2Bytes(ctx.GlobalString(InputFlag.Name)), &runtime.Config{ Origin: sender.Address(), State: statedb, GasLimit: common.Big(ctx.GlobalString(GasFlag.Name)).Uint64(), -- cgit