fix: Chain::split returns NoSplitPending for block number > tip (#8285)

This commit is contained in:
Federico Gimenez
2024-05-21 10:59:17 +02:00
committed by GitHub
parent 5100ddd28e
commit 54cd8cf9b0

View File

@ -289,7 +289,10 @@ impl Chain {
block_number
}
ChainSplitTarget::Number(block_number) => {
if block_number >= chain_tip {
if block_number > chain_tip {
return ChainSplit::NoSplitPending(self)
}
if block_number == chain_tip {
return ChainSplit::NoSplitCanonical(self)
}
if block_number < *self.blocks.first_entry().expect("chain is never empty").key() {
@ -588,7 +591,7 @@ mod tests {
// split at higher number
assert_eq!(
chain.clone().split(ChainSplitTarget::Number(10)),
ChainSplit::NoSplitCanonical(chain.clone())
ChainSplit::NoSplitPending(chain.clone())
);
// split at lower number