diff --git a/src/masternode-sync.cpp b/src/masternode-sync.cpp index cdaa45c6d..34b11537d 100644 --- a/src/masternode-sync.cpp +++ b/src/masternode-sync.cpp @@ -203,7 +203,9 @@ void CMasternodeSync::ProcessTick() TRY_LOCK(cs_vNodes, lockRecv); if(!lockRecv) return; - if(nRequestedMasternodeAssets == MASTERNODE_SYNC_INITIAL) { + if(nRequestedMasternodeAssets == MASTERNODE_SYNC_INITIAL || + (nRequestedMasternodeAssets == MASTERNODE_SYNC_SPORKS && IsBlockchainSynced())) + { SwitchToNextAsset(); } @@ -245,10 +247,6 @@ void CMasternodeSync::ProcessTick() netfulfilledman.AddFulfilledRequest(pnode->addr, "spork-sync"); // get current network sporks pnode->PushMessage(NetMsgType::GETSPORKS); - - // we always ask for sporks, so just skip this - if(nRequestedMasternodeAssets == MASTERNODE_SYNC_SPORKS) SwitchToNextAsset(); - continue; // always get sporks first, switch to the next node without waiting for the next tick }