fix setgenerate better, bug on deamon stop it was starting another staking thread.

This commit is contained in:
blackjok3r
2018-12-17 11:41:26 +08:00
parent f9260ac43f
commit 2ebdae67e8
2 changed files with 16 additions and 13 deletions

View File

@@ -1441,7 +1441,7 @@ void static BitcoinMiner()
#ifdef ENABLE_WALLET #ifdef ENABLE_WALLET
// notaries always default to staking // notaries always default to staking
CBlockTemplate *ptr = CreateNewBlockWithKey(reservekey, pindexPrev->GetHeight()+1, gpucount, ASSETCHAINS_STAKED != 0 && GetArg("-genproclimit", 0) == 0); CBlockTemplate *ptr = CreateNewBlockWithKey(reservekey, pindexPrev->GetHeight()+1, gpucount, ASSETCHAINS_STAKED != 0 && GetArg("-genproclimit", -1) == 0);
#else #else
CBlockTemplate *ptr = CreateNewBlockWithKey(); CBlockTemplate *ptr = CreateNewBlockWithKey();
#endif #endif
@@ -1831,7 +1831,7 @@ void static BitcoinMiner()
} }
//fprintf(stderr,"nThreads.%d fGenerate.%d\n",(int32_t)nThreads,fGenerate); //fprintf(stderr,"nThreads.%d fGenerate.%d\n",(int32_t)nThreads,fGenerate);
if ( ASSETCHAINS_STAKED > 0 && nThreads == 0 ) if ( ASSETCHAINS_STAKED > 0 && nThreads == 0 && fGenerate )
{ {
if ( pwallet != NULL ) if ( pwallet != NULL )
nThreads = 1; nThreads = 1;

View File

@@ -339,22 +339,25 @@ UniValue setgenerate(const UniValue& params, bool fHelp)
//if (nGenProcLimit == 0) //if (nGenProcLimit == 0)
// fGenerate = false; // fGenerate = false;
} }
if ( ASSETCHAINS_LWMAPOS != 0 )
if (fGenerate && !nGenProcLimit)
{ {
VERUS_MINTBLOCKS = 1; if (fGenerate && !nGenProcLimit)
fGenerate = GetBoolArg("-gen", false); {
if ( ASSETCHAINS_STAKED == 0 ) VERUS_MINTBLOCKS = 1;
nGenProcLimit = KOMODO_MININGTHREADS; fGenerate = GetBoolArg("-gen", false);
else
KOMODO_MININGTHREADS = nGenProcLimit; KOMODO_MININGTHREADS = nGenProcLimit;
}
else if (!fGenerate)
{
VERUS_MINTBLOCKS = 0;
KOMODO_MININGTHREADS = 0;
}
else KOMODO_MININGTHREADS = (int32_t)nGenProcLimit;
} }
else if (!fGenerate) else
{ {
VERUS_MINTBLOCKS = 0; KOMODO_MININGTHREADS = (int32_t)nGenProcLimit;
KOMODO_MININGTHREADS = 0;
} }
else KOMODO_MININGTHREADS = (int32_t)nGenProcLimit;
mapArgs["-gen"] = (fGenerate ? "1" : "0"); mapArgs["-gen"] = (fGenerate ? "1" : "0");
mapArgs ["-genproclimit"] = itostr(KOMODO_MININGTHREADS); mapArgs ["-genproclimit"] = itostr(KOMODO_MININGTHREADS);