Make it compile and apply some fixes

This commit is contained in:
lateminer
2018-10-14 22:49:30 +03:00
parent af1585d232
commit eea97b0e37
6 changed files with 34 additions and 24 deletions

View File

@@ -30,20 +30,22 @@ static arith_uint256 GetTargetLimit(int64_t nTime, const Consensus::Params& para
unsigned int GetNextTargetRequired(const CBlockIndex* pindexLast, const CBlockHeader *pblock, const Consensus::Params& params, bool fProofOfStake)
{
unsigned int nTargetLimit = UintToArith256(params.powLimit).GetCompact();
// Genesis block
if (pindexLast == NULL)
return nTargetLimit;
// Genesis block
if (pindexLast == NULL)
return UintToArith256(params.powLimit).GetCompact();
else {
unsigned int nTargetLimit = GetTargetLimit(pindexLast->GetBlockTime(), params, fProofOfStake).GetCompact();
const CBlockIndex* pindexPrev = GetLastBlockIndex(pindexLast, fProofOfStake);
if (pindexPrev->pprev == NULL)
return nTargetLimit; // first block
const CBlockIndex* pindexPrevPrev = GetLastBlockIndex(pindexPrev->pprev, fProofOfStake);
if (pindexPrevPrev->pprev == NULL)
return nTargetLimit; // second block
return CalculateNextTargetRequired(pindexPrev, pindexPrevPrev->GetBlockTime(), params, fProofOfStake);
return CalculateNextTargetRequired(pindexPrev, pindexPrevPrev->GetBlockTime(), params, fProofOfStake);
}
}
unsigned int CalculateNextTargetRequired(const CBlockIndex* pindexLast, int64_t nFirstBlockTime, const Consensus::Params& params, bool fProofOfStake)
@@ -56,8 +58,8 @@ unsigned int CalculateNextTargetRequired(const CBlockIndex* pindexLast, int64_t
return pindexLast->nBits;
}
int64_t nActualSpacing = pindexLast->GetBlockTime() - nFirstBlockTime;
int64_t nTargetSpacing = params.IsProtocolV2(pindexLast->GetBlockTime()) ? params.nTargetSpacing : params.nTargetSpacingV1;
int64_t nActualSpacing = pindexLast->GetBlockTime() - nFirstBlockTime;
// Limit adjustment step
if (pindexLast->GetBlockTime() > params.nProtocolV1RetargetingFixedTime && nActualSpacing < 0)