|
|
@ -1,6 +1,7 @@ |
|
|
|
package rpc |
|
|
|
package rpc |
|
|
|
|
|
|
|
|
|
|
|
import ( |
|
|
|
import ( |
|
|
|
|
|
|
|
"bytes" |
|
|
|
"encoding/json" |
|
|
|
"encoding/json" |
|
|
|
"math/big" |
|
|
|
"math/big" |
|
|
|
// "sync"
|
|
|
|
// "sync"
|
|
|
@ -247,9 +248,12 @@ func (api *EthereumApi) GetRequestReply(req *RpcRequest, reply *interface{}) err |
|
|
|
tx, bhash, bnum, txi := api.xeth().EthTransactionByHash(args.Hash) |
|
|
|
tx, bhash, bnum, txi := api.xeth().EthTransactionByHash(args.Hash) |
|
|
|
if tx != nil { |
|
|
|
if tx != nil { |
|
|
|
v := NewTransactionRes(tx) |
|
|
|
v := NewTransactionRes(tx) |
|
|
|
|
|
|
|
// if the blockhash is 0, assume this is a pending transaction
|
|
|
|
|
|
|
|
if bytes.Compare(bhash.Bytes(), []byte{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}) != 0 { |
|
|
|
v.BlockHash = newHexData(bhash) |
|
|
|
v.BlockHash = newHexData(bhash) |
|
|
|
v.BlockNumber = newHexNum(bnum) |
|
|
|
v.BlockNumber = newHexNum(bnum) |
|
|
|
v.TxIndex = newHexNum(txi) |
|
|
|
v.TxIndex = newHexNum(txi) |
|
|
|
|
|
|
|
} |
|
|
|
*reply = v |
|
|
|
*reply = v |
|
|
|
} |
|
|
|
} |
|
|
|
case "eth_getTransactionByBlockHashAndIndex": |
|
|
|
case "eth_getTransactionByBlockHashAndIndex": |
|
|
|