Test
This commit is contained in:
@@ -99,12 +99,17 @@ std::string FinalizeCCTx(uint64_t CCmask,struct CCcontract_info *cp,CMutableTran
|
|||||||
{
|
{
|
||||||
if (i==0 && mtx.vin[i].prevout.n==10e8)
|
if (i==0 && mtx.vin[i].prevout.n==10e8)
|
||||||
continue;
|
continue;
|
||||||
if ( myGetTransaction(mtx.vin[i].prevout.hash,vintx,hashBlock) != 0 )
|
if ( myGetTransaction(mtx.vin[i].prevout.hash,vintx,hashBlock) != 0 && mtx.vin[i].prevout.n < vintx.vout.size() )
|
||||||
{
|
{
|
||||||
if ( vintx.vout[mtx.vin[i].prevout.n].scriptPubKey.IsPayToCryptoCondition() == 0 && ccvins==0)
|
if ( vintx.vout[mtx.vin[i].prevout.n].scriptPubKey.IsPayToCryptoCondition() == 0 && ccvins==0)
|
||||||
normalvins++;
|
normalvins++;
|
||||||
else ccvins++;
|
else ccvins++;
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
fprintf(stderr,"vin.%d vout.%d is bigger than vintx.%d\n",i,mtx.vin[i].prevout.n,(int32_t)vintx.vout.size());
|
||||||
|
return("");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (normalvins>1 && ccvins)
|
if (normalvins>1 && ccvins)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -385,7 +385,9 @@ bool CScript::IsPayToCryptoCondition(CScript *pCCSubScript, std::vector<std::vec
|
|||||||
bool CScript::IsPayToCryptoCondition(CScript *pCCSubScript) const
|
bool CScript::IsPayToCryptoCondition(CScript *pCCSubScript) const
|
||||||
{
|
{
|
||||||
std::vector<std::vector<unsigned char>> vParams;
|
std::vector<std::vector<unsigned char>> vParams;
|
||||||
return IsPayToCryptoCondition(pCCSubScript, vParams);
|
if ( pCCSubScript != 0 )
|
||||||
|
return IsPayToCryptoCondition(pCCSubScript, vParams);
|
||||||
|
else return(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool CScript::IsPayToCryptoCondition() const
|
bool CScript::IsPayToCryptoCondition() const
|
||||||
|
|||||||
Reference in New Issue
Block a user