Acquire lock to check for genesis block.

This commit is contained in:
Patrick Strateman 2016-05-16 20:33:32 -07:00
parent b3e42b6d02
commit 46b0c3b688

View File

@ -1371,11 +1371,19 @@ bool AppInit2(boost::thread_group& threadGroup, CScheduler& scheduler)
vImportFiles.push_back(strFile); vImportFiles.push_back(strFile);
} }
threadGroup.create_thread(boost::bind(&ThreadImport, vImportFiles)); threadGroup.create_thread(boost::bind(&ThreadImport, vImportFiles));
if (chainActive.Tip() == NULL) {
LogPrintf("Waiting for genesis block to be imported...\n"); // Wait for genesis block to be processed
while (!fRequestShutdown && chainActive.Tip() == NULL) bool fHaveGenesis = false;
while (!fHaveGenesis && !fRequestShutdown) {
{
LOCK(cs_main);
fHaveGenesis = (chainActive.Tip() != NULL);
}
if (!fHaveGenesis) {
MilliSleep(10); MilliSleep(10);
} }
}
// ********************************************************* Step 11: start node // ********************************************************* Step 11: start node