diff options
author | Wei-Ning Huang <w@cobinhood.com> | 2018-10-16 10:37:01 +0800 |
---|---|---|
committer | Wei-Ning Huang <w@dexon.org> | 2019-04-09 21:32:50 +0800 |
commit | d0d1869fa4f4a0a5c1ddc3d4b8d2899cca43fc6a (patch) | |
tree | 4a2eda3baf022e87845d7cc120e9986430e58076 /core | |
parent | 04838f384450658d678e44c0f902c0eed9cd04bd (diff) | |
download | dexon-d0d1869fa4f4a0a5c1ddc3d4b8d2899cca43fc6a.tar.gz dexon-d0d1869fa4f4a0a5c1ddc3d4b8d2899cca43fc6a.tar.zst dexon-d0d1869fa4f4a0a5c1ddc3d4b8d2899cca43fc6a.zip |
core: fix nil map initialization
Diffstat (limited to 'core')
-rw-r--r-- | core/blockchain.go | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/core/blockchain.go b/core/blockchain.go index 88287a21d..8d90c9348 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 { |