diff --git a/src/komodo_bitcoind.h b/src/komodo_bitcoind.h index 34575f35d..3c7003a70 100644 --- a/src/komodo_bitcoind.h +++ b/src/komodo_bitcoind.h @@ -923,10 +923,7 @@ uint64_t komodo_accrued_interest(int32_t *txheightp,uint32_t *locktimep,uint256 { uint64_t value; uint32_t tiptime=0,txheighttimep; CBlockIndex *pindex; if ( (pindex= chainActive[tipheight]) != 0 ) - { tiptime = (uint32_t)pindex->nTime; - fprintf(stderr,"tipheight.%d -> %u\n",tipheight,tiptime); - } else fprintf(stderr,"cant find height[%d]\n",tipheight); if ( (*locktimep= komodo_interest_args(&txheighttimep,txheightp,&tiptime,&value,hash,n)) != 0 ) { diff --git a/src/main.cpp b/src/main.cpp index fa62bdf38..45cf3116e 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -1993,7 +1993,7 @@ bool CheckTxInputs(const CTransaction& tx, CValidationState& state, const CCoins int64_t interest; int32_t txheight; uint32_t locktime; if ( (interest= komodo_accrued_interest(&txheight,&locktime,prevout.hash,prevout.n,0,coins->vout[prevout.n].nValue,(int32_t)nSpendHeight-1)) != 0 ) { -fprintf(stderr,"checkResult %.8f += val %.8f interest %.8f ht.%d lock.%u tip.%u\n",(double)nValueIn/COIN,(double)coins->vout[prevout.n].nValue/COIN,(double)interest/COIN,txheight,locktime,chainActive.Tip()->nTime); +//fprintf(stderr,"checkResult %.8f += val %.8f interest %.8f ht.%d lock.%u tip.%u\n",(double)nValueIn/COIN,(double)coins->vout[prevout.n].nValue/COIN,(double)interest/COIN,txheight,locktime,chainActive.Tip()->nTime); nValueIn += interest; } } @@ -2012,8 +2012,9 @@ fprintf(stderr,"checkResult %.8f += val %.8f interest %.8f ht.%d lock.%u tip.%u\ if (nValueIn < tx.GetValueOut()) { - fprintf(stderr,"valuein %s vs %s error\n",FormatMoney(nValueIn).c_str(), FormatMoney(tx.GetValueOut()).c_str()); - return state.DoS(100, error("CheckInputs(): %s value in (%s) < value out (%s) diff %.8f", + fprintf(stderr,"spentheight.%d valuein %s vs %s error\n",nSpendHeight,FormatMoney(nValueIn).c_str(), FormatMoney(tx.GetValueOut()).c_str()); + if ( nSpendHeight > 300000 ) + return state.DoS(100, error("CheckInputs(): %s value in (%s) < value out (%s) diff %.8f", tx.GetHash().ToString(), FormatMoney(nValueIn), FormatMoney(tx.GetValueOut()),((double)nValueIn - tx.GetValueOut())/COIN),REJECT_INVALID, "bad-txns-in-belowout"); } // Tally transaction fees