From 8f4705c3a86277a1fdac1c69cc965d99b985a2cd Mon Sep 17 00:00:00 2001 From: Nguyen Sy Thanh Son Date: Mon, 14 Jan 2019 16:55:50 +0000 Subject: [PATCH] fix bug receipt status --- consensus/posv/posv.go | 7 +++++-- contracts/utils.go | 9 ++++++--- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/consensus/posv/posv.go b/consensus/posv/posv.go index 201c3a27a6..254a568176 100644 --- a/consensus/posv/posv.go +++ b/consensus/posv/posv.go @@ -1032,13 +1032,16 @@ func (c *Posv) CacheData(header *types.Header, txs []*types.Transaction, receipt var b uint for _, r := range receipts { if r.TxHash == tx.Hash() { - b = r.Status + if len(r.PostState) > 0 { + b = types.ReceiptStatusSuccessful + } else { + b = r.Status + } break } } if b == types.ReceiptStatusFailed { - log.Debug("Sign tx failed", "hash", tx.Hash().String()) continue } diff --git a/contracts/utils.go b/contracts/utils.go index ca633dd4d3..ed4b36e12d 100644 --- a/contracts/utils.go +++ b/contracts/utils.go @@ -340,13 +340,16 @@ func GetRewardForCheckpoint(c *posv.Posv, chain consensus.ChainReader, number ui var b uint for _, r := range receipts { if r.TxHash == tx.Hash() { - b = r.Status + if len(r.PostState) > 0 { + b = types.ReceiptStatusSuccessful + } else { + b = r.Status + } break } } - if b == types.ReceiptStatusFailed && i >= rCheckpoint { - log.Debug("Sign tx failed", "hash", tx.Hash().String()) + if b == types.ReceiptStatusFailed { continue }