diff options
author | Taylor Gerring <taylor.gerring@gmail.com> | 2015-04-02 20:54:28 +0800 |
---|---|---|
committer | Taylor Gerring <taylor.gerring@gmail.com> | 2015-04-02 20:54:28 +0800 |
commit | 876ce0fb12d7c1eae2907dad9ea13d01e9b3ac17 (patch) | |
tree | b1dda4e58f0c2fed203a8f7f313e5cd72fbfcb01 | |
parent | 172b34351aeb03d0318d241c0941c27608448cfb (diff) | |
download | dexon-876ce0fb12d7c1eae2907dad9ea13d01e9b3ac17.tar.gz dexon-876ce0fb12d7c1eae2907dad9ea13d01e9b3ac17.tar.zst dexon-876ce0fb12d7c1eae2907dad9ea13d01e9b3ac17.zip |
More nil checks
-rw-r--r-- | rpc/api.go | 6 | ||||
-rw-r--r-- | rpc/responses.go | 6 |
2 files changed, 10 insertions, 2 deletions
diff --git a/rpc/api.go b/rpc/api.go index ee2a6a047..b46151cda 100644 --- a/rpc/api.go +++ b/rpc/api.go @@ -212,6 +212,9 @@ func (api *EthereumApi) GetRequestReply(req *RpcRequest, reply *interface{}) err block := api.xeth().EthBlockByHash(args.Hash) br := NewBlockRes(block, true) + if br == nil { + *reply = nil + } if args.Index >= int64(len(br.Transactions)) || args.Index < 0 { return NewValidationError("Index", "does not exist") @@ -225,6 +228,9 @@ func (api *EthereumApi) GetRequestReply(req *RpcRequest, reply *interface{}) err block := api.xeth().EthBlockByNumber(args.BlockNumber) v := NewBlockRes(block, true) + if v == nil { + *reply = nil + } if args.Index >= int64(len(v.Transactions)) || args.Index < 0 { return NewValidationError("Index", "does not exist") diff --git a/rpc/responses.go b/rpc/responses.go index 3d1687cb6..079ee8765 100644 --- a/rpc/responses.go +++ b/rpc/responses.go @@ -125,8 +125,6 @@ func (b *BlockRes) MarshalJSON() ([]byte, error) { } func NewBlockRes(block *types.Block, fullTx bool) *BlockRes { - // TODO respect fullTx flag - if block == nil { return nil } @@ -182,6 +180,10 @@ type TransactionRes struct { } func NewTransactionRes(tx *types.Transaction) *TransactionRes { + if tx == nil { + return nil + } + var v = new(TransactionRes) v.Hash = newHexData(tx.Hash()) v.Nonce = newHexNum(tx.Nonce()) |