Fix syncing issues
- if(pindexPrev->nHeight + 4 < pindexBestHeader->nHeight || pindexPrev->nTime + 600 < GetTime()) return; -- && allowed skipping in various situations, which caused blocks to be rejected because of lack of mnfinalbudget data
This commit is contained in:
parent
9e65749ff6
commit
5281c48f70
@ -225,6 +225,7 @@ bool IsBlockValueValid(const CBlock& block, int64_t nExpectedValue){
|
||||
bool IsBlockPayeeValid(const CTransaction& txNew, int nBlockHeight)
|
||||
{
|
||||
if(!masternodeSync.IsSynced()) { //there is no budget data to use to check anything -- find the longest chain
|
||||
if(fDebug) LogPrintf("Client not synced, skipping block payee checks\n");
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -136,7 +136,7 @@ void CMasternodeSync::Process()
|
||||
if(IsInitialBlockDownload()) return;
|
||||
|
||||
//don't begin syncing until we're almost at a recent block
|
||||
if(pindexPrev->nHeight + 4 < pindexBestHeader->nHeight && pindexPrev->nTime + 600 < GetTime()) return;
|
||||
if(pindexPrev->nHeight + 4 < pindexBestHeader->nHeight || pindexPrev->nTime + 600 < GetTime()) return;
|
||||
|
||||
if (pnode->nVersion >= masternodePayments.GetMinMasternodePaymentsProto()) {
|
||||
|
||||
|
@ -157,7 +157,10 @@ uint256 CMasternode::CalculateScore(int mod, int64_t nBlockHeight)
|
||||
uint256 hash = 0;
|
||||
uint256 aux = vin.prevout.hash + vin.prevout.n;
|
||||
|
||||
if(!GetBlockHash(hash, nBlockHeight)) return 0;
|
||||
if(!GetBlockHash(hash, nBlockHeight)) {
|
||||
LogPrintf("CalculateScore ERROR - nHeight %d - Returned 0\n", nBlockHeight);
|
||||
return 0;
|
||||
}
|
||||
|
||||
CHashWriter ss(SER_GETHASH, PROTOCOL_VERSION);
|
||||
ss << hash;
|
||||
|
Loading…
Reference in New Issue
Block a user