Fix for GetBlockValue() after block 13,440,000
Forces the block reward to zero when right shift in GetBlockValue() is undefined, after 64 reward halvings (block height 13,440,000).
This commit is contained in:
parent
a63f8b7b36
commit
c5a9d2ca9e
1 changed files with 6 additions and 1 deletions
|
@ -1176,9 +1176,14 @@ void static PruneOrphanBlocks()
|
|||
int64_t GetBlockValue(int nHeight, int64_t nFees)
|
||||
{
|
||||
int64_t nSubsidy = 50 * COIN;
|
||||
int halvings = nHeight / Params().SubsidyHalvingInterval();
|
||||
|
||||
// Force block reward to zero when right shift is undefined.
|
||||
if (halvings >= 64)
|
||||
return nFees;
|
||||
|
||||
// Subsidy is cut in half every 210,000 blocks which will occur approximately every 4 years.
|
||||
nSubsidy >>= (nHeight / Params().SubsidyHalvingInterval());
|
||||
nSubsidy >>= halvings;
|
||||
|
||||
return nSubsidy + nFees;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue