aboutsummaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
authorWei-Ning Huang <w@cobinhood.com>2018-10-16 10:37:01 +0800
committerWei-Ning Huang <w@dexon.org>2018-12-19 20:54:27 +0800
commit9af791103c2633bd095805e5d82d55ebc5305b68 (patch)
treefa9b5f952284454a4467a835518edd6d2073a7c7 /core
parent2c67107155875b528b15628658e31cb97b41f8db (diff)
downloaddexon-9af791103c2633bd095805e5d82d55ebc5305b68.tar
dexon-9af791103c2633bd095805e5d82d55ebc5305b68.tar.gz
dexon-9af791103c2633bd095805e5d82d55ebc5305b68.tar.bz2
dexon-9af791103c2633bd095805e5d82d55ebc5305b68.tar.lz
dexon-9af791103c2633bd095805e5d82d55ebc5305b68.tar.xz
dexon-9af791103c2633bd095805e5d82d55ebc5305b68.tar.zst
dexon-9af791103c2633bd095805e5d82d55ebc5305b68.zip
core: fix nil map initialization
Diffstat (limited to 'core')
-rw-r--r--core/blockchain.go7
1 files changed, 7 insertions, 0 deletions
diff --git a/core/blockchain.go b/core/blockchain.go
index 234a67d6c..208edd5bb 100644
--- a/core/blockchain.go
+++ b/core/blockchain.go
@@ -230,6 +230,9 @@ func (bc *BlockChain) AddConfirmedBlock(block *coreTypes.Block) {
defer bc.confirmedBlockMu.Unlock()
bc.confirmedBlock[block.Hash] = block
+ if bc.filteredConfirmedBlock[block.Position.ChainID] == nil {
+ bc.filteredConfirmedBlock[block.Position.ChainID] = make(map[coreCommon.Hash]*coreTypes.Block)
+ }
bc.filteredConfirmedBlock[block.Position.ChainID][block.Hash] = block
}
@@ -240,6 +243,10 @@ func (bc *BlockChain) RemoveConfirmedBlock(hash coreCommon.Hash) {
block := bc.confirmedBlock[hash]
delete(bc.filteredConfirmedBlock[block.Position.ChainID], block.Hash)
delete(bc.confirmedBlock, block.Hash)
+
+ if len(bc.filteredConfirmedBlock[block.Position.ChainID]) == 0 {
+ bc.filteredConfirmedBlock[block.Position.ChainID] = nil
+ }
}
func (bc *BlockChain) GetConfirmedBlockByHash(hash coreCommon.Hash) *coreTypes.Block {