From d0dcdd6bb7681966f62ea757a7e9c5edd163f0b5 Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 23 Jul 2018 06:33:23 -1100 Subject: [PATCH] Test --- src/cc/faucet.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/cc/faucet.cpp b/src/cc/faucet.cpp index ace45e0c3..26571fb57 100644 --- a/src/cc/faucet.cpp +++ b/src/cc/faucet.cpp @@ -56,7 +56,8 @@ uint64_t IsFaucetvout(const CTransaction& tx,int32_t v) bool FaucetExactAmounts(Eval* eval,const CTransaction &tx,int32_t minage) { - CTransaction vinTx; uint256 hashBlock; int32_t i,numvins,numvouts; uint64_t inputs=0,outputs=0,assetoshis; CBlockIndex *pindex; + static uint256 zerohash; + CTransaction vinTx; uint256 hashBlock,activehash; int32_t i,numvins,numvouts; uint64_t inputs=0,outputs=0,assetoshis; numvins = tx.vin.size(); numvouts = tx.vout.size(); for (i=0; iGetTxUnconfirmed(tx.vin[i].prevout.hash,vinTx,hashBlock) == 0 ) return eval->Invalid("always should find vin, but didnt"); - else if ( (pindex= mapBlockIndex[hashBlock]) != 0 ) + else { + if ( hashBlock == zerohash ) + return eval->Invalid("cant faucet from mempool"); for (i=31; i>=0; i--) fprintf(stderr,"%02x",((uint8_t *)&hashBlock)[i]); - fprintf(stderr,"couldnt find block\n"); - return eval->Invalid("couldnt find pindex for hashBlock"); + fprintf(stderr," hashBlock\n"); + if ( (assetoshis= IsFaucetvout(vinTx,tx.vin[i].prevout.n)) != 0 ) + inputs += assetoshis; } - else if ( pindex->nHeight <= 0 || pindex->nHeight > chainActive.LastTip()->nHeight ) - return eval->Invalid("vin is not eligible"); - else if ( (assetoshis= IsFaucetvout(vinTx,tx.vin[i].prevout.n)) != 0 ) - inputs += assetoshis; } } for (i=0; i