This commit is contained in:
jl777
2018-08-01 00:43:34 -11:00
parent 7a241adbe6
commit 502dad4679

View File

@@ -430,14 +430,17 @@ bool DiceValidate(struct CCcontract_info *cp,Eval *eval,const CTransaction &tx)
return eval->Invalid("vout[1] constrain violation for bet");
else if ( tx.vout[2].nValue >= txfee+maxodds || tx.vout[2].nValue < txfee )
return eval->Invalid("vout[2] nValue violation for bet");
else if ( eval->GetTxUnconfirmed(vinTx.vin[0].prevout.hash,vinofvinTx,hashBlock) == 0 || vinofvinTx.vout.size() < 2 )
else if ( eval->GetTxUnconfirmed(vinTx.vin[0].prevout.hash,vinofvinTx,hashBlock) == 0 || vinofvinTx.vout.size() < 1 )
return eval->Invalid("always should find vinofvin.0, but didnt for bet");
else if ( vinofvinTx.vout[1].scriptPubKey != fundingPubKey )
else if ( vinofvinTx.vout[0].scriptPubKey != fundingPubKey )
{
uint8_t *ptr0,*ptr1; int32_t i; char str[65];
ptr0 = (uint8_t *)vinofvinTx.vout[1].scriptPubKey.data();
fprintf(stderr,"bidTx.%s\n",uint256_str(str,txid));
fprintf(stderr,"entropyTx.%s v%d\n",uint256_str(str,tx.vin[0].prevout.hash),(int32_t)tx.vin[0].prevout.n);
fprintf(stderr,"entropyTx vin0 %s v%d\n",uint256_str(str,vinTx.vin[0].prevout.hash),(int32_t)vinTx.vin[0].prevout.n);
ptr0 = (uint8_t *)vinofvinTx.vout[0].scriptPubKey.data();
ptr1 = (uint8_t *)fundingPubKey.data();
for (i=0; i<vinofvinTx.vout[1].scriptPubKey.size(); i++)
for (i=0; i<vinofvinTx.vout[0].scriptPubKey.size(); i++)
fprintf(stderr,"%02x",ptr0[i]);
fprintf(stderr," script vs ");
for (i=0; i<fundingPubKey.size(); i++)
@@ -600,12 +603,12 @@ uint64_t DicePlanFunds(uint64_t &entropyval,uint256 &entropytxid,uint64_t refsbi
fprintf(stderr,"cant find entropy vin0 %s or vin0prev %d vouts[%d]\n",uint256_str(str,tx.vin[0].prevout.hash),tx.vin[0].prevout.n,(int32_t)vinTx.vout.size());
continue;
}
if ( vinTx.vout[1].scriptPubKey != fundingPubKey )
if ( vinTx.vout[0].scriptPubKey != fundingPubKey )
{
uint8_t *ptr0,*ptr1; int32_t i;
ptr0 = (uint8_t *)vinTx.vout[1].scriptPubKey.data();
ptr0 = (uint8_t *)vinTx.vout[0].scriptPubKey.data();
ptr1 = (uint8_t *)fundingPubKey.data();
for (i=0; i<tx.vout[1].scriptPubKey.size(); i++)
for (i=0; i<vinTx.vout[0].scriptPubKey.size(); i++)
fprintf(stderr,"%02x",ptr0[i]);
fprintf(stderr," script vs ");
for (i=0; i<fundingPubKey.size(); i++)