fix ubsan: bitcoin-tx: not initialize context before IsFullyValid

This commit is contained in:
Pieter Wuille 2017-02-10 18:03:14 -08:00
parent f34cdcbd80
commit 321bbc2079

View File

@ -651,11 +651,13 @@ static void MutateTx(CMutableTransaction& tx, const std::string& command,
MutateTxDelOutput(tx, commandVal); MutateTxDelOutput(tx, commandVal);
else if (command == "outaddr") else if (command == "outaddr")
MutateTxAddOutAddr(tx, commandVal); MutateTxAddOutAddr(tx, commandVal);
else if (command == "outpubkey") else if (command == "outpubkey") {
if (!ecc) { ecc.reset(new Secp256k1Init()); }
MutateTxAddOutPubKey(tx, commandVal); MutateTxAddOutPubKey(tx, commandVal);
else if (command == "outmultisig") } else if (command == "outmultisig") {
if (!ecc) { ecc.reset(new Secp256k1Init()); }
MutateTxAddOutMultiSig(tx, commandVal); MutateTxAddOutMultiSig(tx, commandVal);
else if (command == "outscript") } else if (command == "outscript")
MutateTxAddOutScript(tx, commandVal); MutateTxAddOutScript(tx, commandVal);
else if (command == "outdata") else if (command == "outdata")
MutateTxAddOutData(tx, commandVal); MutateTxAddOutData(tx, commandVal);