Merge pull request #585 from jbhurat/estimate-gas

Fixing high estimate gas issue
This commit is contained in:
Samer Falah 2018-12-11 16:47:37 -05:00 committed by GitHub
commit df03a37833
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 13 additions and 1 deletions

View File

@ -149,7 +149,19 @@ func (b *EthAPIBackend) GetEVM(ctx context.Context, msg core.Message, state vm.M
vmError := func() error { return nil }
context := core.NewEVMContext(msg, header, b.eth.BlockChain(), nil)
return vm.NewEVM(context, statedb.state, statedb.privateState, b.eth.chainConfig, vmCfg), vmError, nil
// Set the private state to public state if contract address is not present in the private state
to := common.Address{}
if msg.To() != nil {
to = *msg.To()
}
privateState := statedb.privateState
if !privateState.Exist(to) {
privateState = statedb.state
}
return vm.NewEVM(context, statedb.state, privateState, b.eth.chainConfig, vmCfg), vmError, nil
}
func (b *EthAPIBackend) SubscribeRemovedLogsEvent(ch chan<- core.RemovedLogsEvent) event.Subscription {