Enforce score == payout

This commit is contained in:
jl777
2019-01-31 00:01:19 -11:00
parent 1856fca69c
commit 71e47834e2

View File

@@ -2930,10 +2930,12 @@ bool sudoku_validate(struct CCcontract_info *cp,int32_t height,Eval *eval,const
case 'G': case 'G':
if ( sudoku_genopreturndecode(unsolved,scriptPubKey) == 'G' ) if ( sudoku_genopreturndecode(unsolved,scriptPubKey) == 'G' )
{ {
fprintf(stderr,"unsolved.(%s)\n",unsolved); //fprintf(stderr,"unsolved.(%s)\n",unsolved);
if ( dupree_solver(0,&score,unsolved) != 1 || score*COIN != tx.vout[1].nValue ) if ( dupree_solver(0,&score,unsolved) != 1 || score*COIN != tx.vout[1].nValue )
{ {
fprintf(stderr,"ht.%d score.%d vs %.8f %s\n",height,score,(double)tx.vout[1].nValue/COIN,tx.GetHash().ToString().c_str()); fprintf(stderr,"ht.%d score.%d vs %.8f %s\n",height,score,(double)tx.vout[1].nValue/COIN,tx.GetHash().ToString().c_str());
if ( ht > 2000 )
return eval->Invalid("mismatched sudoku value vs score");
} }
} }
return(true); return(true);