aboutsummaryrefslogtreecommitdiffstats
path: root/xeth
diff options
context:
space:
mode:
authorobscuren <geffobscura@gmail.com>2015-05-16 06:27:13 +0800
committerobscuren <geffobscura@gmail.com>2015-05-16 06:27:13 +0800
commit1564f1a020b9edc78bc672f8f2df64b3d0dc55c3 (patch)
treed898e2b20a6c2e0b5613ae7f669499c5db23b719 /xeth
parent8e24378cc1acb074b56de75bf0baf6feb7927677 (diff)
parent7ea76fcf993f3fecb55233bdcc2409618d9080b9 (diff)
downloaddexon-1564f1a020b9edc78bc672f8f2df64b3d0dc55c3.tar
dexon-1564f1a020b9edc78bc672f8f2df64b3d0dc55c3.tar.gz
dexon-1564f1a020b9edc78bc672f8f2df64b3d0dc55c3.tar.bz2
dexon-1564f1a020b9edc78bc672f8f2df64b3d0dc55c3.tar.lz
dexon-1564f1a020b9edc78bc672f8f2df64b3d0dc55c3.tar.xz
dexon-1564f1a020b9edc78bc672f8f2df64b3d0dc55c3.tar.zst
dexon-1564f1a020b9edc78bc672f8f2df64b3d0dc55c3.zip
Merge branch 'release/0.9.21'
Diffstat (limited to 'xeth')
-rw-r--r--xeth/xeth.go9
1 files changed, 7 insertions, 2 deletions
diff --git a/xeth/xeth.go b/xeth/xeth.go
index 0fe68d175..88cd30afc 100644
--- a/xeth/xeth.go
+++ b/xeth/xeth.go
@@ -318,7 +318,11 @@ func (self *XEth) EthTransactionByHash(hash string) (tx *types.Transaction, blha
Index uint64
}
- v, _ := self.backend.ExtraDb().Get(append(common.FromHex(hash), 0x0001))
+ v, dberr := self.backend.ExtraDb().Get(append(common.FromHex(hash), 0x0001))
+ // TODO check specifically for ErrNotFound
+ if dberr != nil {
+ return
+ }
r := bytes.NewReader(v)
err := rlp.Decode(r, &txExtra)
if err == nil {
@@ -774,7 +778,7 @@ func (self *XEth) PushTx(encodedTx string) (string, error) {
}
func (self *XEth) Call(fromStr, toStr, valueStr, gasStr, gasPriceStr, dataStr string) (string, string, error) {
- statedb := self.State().State() //self.eth.ChainManager().TransState()
+ statedb := self.State().State().Copy() //self.eth.ChainManager().TransState()
var from *state.StateObject
if len(fromStr) == 0 {
accounts, err := self.backend.AccountManager().Accounts()
@@ -787,6 +791,7 @@ func (self *XEth) Call(fromStr, toStr, valueStr, gasStr, gasPriceStr, dataStr st
from = statedb.GetOrNewStateObject(common.HexToAddress(fromStr))
}
+ from.SetBalance(common.MaxBig)
from.SetGasPool(self.backend.ChainManager().GasLimit())
msg := callmsg{
from: from,