mirror of
https://github.com/kaspanet/kaspad.git
synced 2025-07-03 19:32:30 +00:00
[DEV-34] Modified process.go to account for multiple previous hashes.
This commit is contained in:
parent
bc5edffc92
commit
196d23e787
@ -211,15 +211,25 @@ func (b *BlockChain) ProcessBlock(block *btcutil.Block, flags BehaviorFlags) (bo
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Handle orphan blocks.
|
// Handle orphan blocks.
|
||||||
prevHash := &blockHeader.PrevBlock
|
numPrevHashes := blockHeader.NumPrevBlocks
|
||||||
prevHashExists, err := b.blockExists(prevHash)
|
prevHashes := blockHeader.PrevBlocks
|
||||||
|
allPrevHashesExist := true
|
||||||
|
for i := byte(0); i < numPrevHashes; i++ {
|
||||||
|
prevHash := prevHashes[i]
|
||||||
|
prevHashExists, err := b.blockExists(&prevHash)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return false, false, err
|
return false, false, err
|
||||||
}
|
}
|
||||||
|
|
||||||
if !prevHashExists {
|
if !prevHashExists {
|
||||||
log.Infof("Adding orphan block %v with parent %v", blockHash, prevHash)
|
log.Infof("Adding orphan block %v with parent %v", blockHash, prevHash)
|
||||||
b.addOrphanBlock(block)
|
b.addOrphanBlock(block)
|
||||||
|
|
||||||
|
allPrevHashesExist = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if !allPrevHashesExist {
|
||||||
return false, true, nil
|
return false, true, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user