fix minrelease recover transaction
This commit is contained in:
@@ -257,9 +257,12 @@ bool RewardsValidate(struct CCcontract_info *cp,Eval* eval,const CTransaction &t
|
|||||||
}
|
}
|
||||||
if ( !CheckTxFee(tx, txfee, chainActive.LastTip()->GetHeight(), chainActive.LastTip()->nTime) )
|
if ( !CheckTxFee(tx, txfee, chainActive.LastTip()->GetHeight(), chainActive.LastTip()->nTime) )
|
||||||
return eval->Invalid("txfee is too high");
|
return eval->Invalid("txfee is too high");
|
||||||
|
reward = RewardsCalc(amount,tx.vin[0].prevout.hash,APR,minseconds,maxseconds,mindeposit);
|
||||||
if ( numvins == 1 && tx.vout[0].scriptPubKey.IsPayToCryptoCondition() == 0 && tx.vout[1].nValue == 10000 )
|
if ( numvins == 1 && tx.vout[0].scriptPubKey.IsPayToCryptoCondition() == 0 && tx.vout[1].nValue == 10000 )
|
||||||
{
|
{
|
||||||
if ( tx.vout[1].scriptPubKey != tx.vout[0].scriptPubKey )
|
if ( reward == 0 )
|
||||||
|
return eval->Invalid("unlock recover no rewards");
|
||||||
|
else if ( tx.vout[1].scriptPubKey != tx.vout[0].scriptPubKey )
|
||||||
return eval->Invalid("unlock recover tx vout.1 mismatched scriptPubKey");
|
return eval->Invalid("unlock recover tx vout.1 mismatched scriptPubKey");
|
||||||
else if ( tx.vout[0].scriptPubKey != vinTx.vout[1].scriptPubKey )
|
else if ( tx.vout[0].scriptPubKey != vinTx.vout[1].scriptPubKey )
|
||||||
return eval->Invalid("unlock recover tx vout.0 mismatched scriptPubKey");
|
return eval->Invalid("unlock recover tx vout.0 mismatched scriptPubKey");
|
||||||
|
|||||||
Reference in New Issue
Block a user