// There are shortcuts for pay-to-script-hash and pay-to-pubkey-hash, which are more constrained than the other types:
// It is always OP_HASH160 20 [20 byte hash] OP_EQUAL
- if (scriptPubKey.IsPayToScriptHash())
+ if (scriptPubKey.IsPayToScriptHash)
{
typeRet = txnouttype.TX_SCRIPTHASH;
}
// It is always OP_DUP OP_HASH160 20 [20 byte hash] OP_EQUALVERIFY OP_CHECKSIG
- if (scriptPubKey.IsPayToPubKeyHash())
+ if (scriptPubKey.IsPayToPubKeyHash)
{
typeRet = txnouttype.TX_PUBKEYHASH;
foreach (Tuple<txnouttype, IEnumerable<byte>> templateTuple in templateTuples)
{
- CScript script2 = new CScript(templateTuple.Item2);
CScript script1 = scriptPubKey;
+ CScript script2 = new CScript(templateTuple.Item2);
opcodetype opcode1, opcode2;
while (true)
{
- if (wl1.GetItem() == last1 && wl2.GetItem() == last2)
+ if (wl1.GetCurrentItem() == last1 && wl2.GetCurrentItem() == last2)
{
// Found a match
typeRet = templateTuple.Item1;
break;
}
}
- else if (opcode1 != opcode2 || args1.SequenceEqual(args2))
+ else if (opcode1 != opcode2 || !args1.SequenceEqual(args2))
{
// Others must match exactly
break;