diff --git a/IxianDLT/Block/BlockProcessor.cs b/IxianDLT/Block/BlockProcessor.cs index 133f842f..6922e6e5 100644 --- a/IxianDLT/Block/BlockProcessor.cs +++ b/IxianDLT/Block/BlockProcessor.cs @@ -860,7 +860,9 @@ public BlockVerifyStatus verifyBlockBasic(Block b, bool verify_sig = true, Remot return BlockVerifyStatus.PotentiallyForkedBlock; } - if (verify_sig) + ulong lastBlockNum = IxianHandler.getLastBlockHeight(); + + if (b.blockNum <= lastBlockNum + 1 && verify_sig) { bool skip_sig_verification = false; if(pendingSuperBlocks.Count() > 0 && pendingSuperBlocks.OrderBy(x=> x.Key).Last().Key > b.blockNum) @@ -888,8 +890,6 @@ public BlockVerifyStatus verifyBlockBasic(Block b, bool verify_sig = true, Remot } } - ulong lastBlockNum = IxianHandler.getLastBlockHeight(); - if (prevBlock == null && lastBlockNum > 1) // block not found but blockChain is not empty, request the missing blocks { if (!Node.blockSync.synchronizing)