Add source chain to burn op return, and extract it in getimports RPC if it exists.

This commit is contained in:
blackjok3r
2019-01-03 01:02:45 +08:00
parent e93fd95815
commit bb95bce9e7
3 changed files with 42 additions and 15 deletions

View File

@@ -70,10 +70,19 @@ bool UnmarshalBurnTx(const CTransaction &burnTx, std::string &targetSymbol, uint
if (burnTx.vout.size() == 0) return false;
GetOpReturnData(burnTx.vout.back().scriptPubKey, burnOpret);
E_UNMARSHAL(burnOpret, ss >> VARINT(ccid));
return E_UNMARSHAL(burnOpret, ss >> VARINT(*targetCCid);
ss >> targetSymbol;
ss >> payoutsHash;
ss >> rawproof);
if ( ccid != 0xffffffff )
{
return E_UNMARSHAL(burnOpret, ss >> VARINT(*targetCCid);
ss >> targetSymbol;
ss >> payoutsHash);
}
else
{
return E_UNMARSHAL(burnOpret, ss >> VARINT(*targetCCid);
ss >> targetSymbol;
ss >> payoutsHash;
ss >> rawproof);
}
}