Skip to content

Commit fa56d56

Browse files
author
MarcoFalke
committed
fuzz: Properly initialize PrecomputedTransactionData
1 parent d67883d commit fa56d56

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

src/test/fuzz/script_flags.cpp

+7-1
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@ void test_one_input(const std::vector<uint8_t>& buffer)
3131

3232
try {
3333
const CTransaction tx(deserialize, ds);
34-
const PrecomputedTransactionData txdata(tx);
3534

3635
unsigned int verify_flags;
3736
ds >> verify_flags;
@@ -41,10 +40,17 @@ void test_one_input(const std::vector<uint8_t>& buffer)
4140
unsigned int fuzzed_flags;
4241
ds >> fuzzed_flags;
4342

43+
std::vector<CTxOut> spent_outputs;
4444
for (unsigned i = 0; i < tx.vin.size(); ++i) {
4545
CTxOut prevout;
4646
ds >> prevout;
47+
spent_outputs.push_back(prevout);
48+
}
49+
PrecomputedTransactionData txdata;
50+
txdata.Init(tx, std::move(spent_outputs));
4751

52+
for (unsigned i = 0; i < tx.vin.size(); ++i) {
53+
const CTxOut& prevout = txdata.m_spent_outputs.at(i);
4854
const TransactionSignatureChecker checker{&tx, i, prevout.nValue, txdata};
4955

5056
ScriptError serror;

0 commit comments

Comments
 (0)