Fix too aggressive check for coinbase amount

This commit is contained in:
Michael Toutonghi
2018-05-13 23:34:34 -07:00
parent 1f722359c1
commit 7702587db8

View File

@@ -907,14 +907,6 @@ unsigned int GetP2SHSigOpCount(const CTransaction& tx, const CCoinsViewCache& in
*/ */
bool ContextualCheckCoinbaseTransaction(const CTransaction& tx, const int nHeight) bool ContextualCheckCoinbaseTransaction(const CTransaction& tx, const int nHeight)
{ {
int64_t valOut = tx.GetValueOut(), sub = komodo_ac_block_subsidy(nHeight);
if ((uint64_t)(tx.GetValueOut()) != komodo_ac_block_subsidy(nHeight))
{
// failed with invalid coinbase output
fprintf(stderr, "ERROR: invalid block #%i, reward=%li, subsidy should be %li", nHeight, valOut, sub);
return(false);
}
// if time locks are on, ensure that this coin base is time locked exactly as it should be // if time locks are on, ensure that this coin base is time locked exactly as it should be
if ((uint64_t)(tx.GetValueOut()) >= ASSETCHAINS_TIMELOCKGTE) if ((uint64_t)(tx.GetValueOut()) >= ASSETCHAINS_TIMELOCKGTE)
{ {
@@ -4040,7 +4032,6 @@ bool ContextualCheckBlock(const CBlock& block, CValidationState& state, CBlockIn
return state.DoS(100, error("%s: block height mismatch in coinbase", __func__), REJECT_INVALID, "bad-cb-height"); return state.DoS(100, error("%s: block height mismatch in coinbase", __func__), REJECT_INVALID, "bad-cb-height");
} }
} }
return true; return true;
} }