diff --git a/src/zcbenchmarks.cpp b/src/zcbenchmarks.cpp index c7460fb35..94f27ae6b 100644 --- a/src/zcbenchmarks.cpp +++ b/src/zcbenchmarks.cpp @@ -193,14 +193,17 @@ double benchmark_large_tx() assert(ss.size() > MAX_BLOCK_SIZE - error); } + // Spending tx has all its inputs signed and does not need to be mutated anymore + CTransaction final_spending_tx(spending_tx); + // Benchmark signature verification costs: timer_start(); for (size_t i = 0; i < NUM_INPUTS; i++) { ScriptError serror = SCRIPT_ERR_OK; - assert(VerifyScript(spending_tx.vin[i].scriptSig, + assert(VerifyScript(final_spending_tx.vin[i].scriptSig, prevPubKey, STANDARD_SCRIPT_VERIFY_FLAGS, - MutableTransactionSignatureChecker(&spending_tx, i), + TransactionSignatureChecker(&final_spending_tx, i), &serror)); } return timer_stop();