Merge 74fb19317a into merged_master (Bitcoin PR bitcoin/bitcoin#30849)

This commit is contained in:
Tom Trevethan 2026-03-31 22:40:02 +01:00
commit a7e8a376fa
17 changed files with 106 additions and 135 deletions

View file

@ -16,10 +16,11 @@ void FindCoins(const NodeContext& node, std::map<COutPoint, Coin>& coins)
LOCK2(cs_main, node.mempool->cs);
CCoinsViewCache& chain_view = node.chainman->ActiveChainstate().CoinsTip();
CCoinsViewMemPool mempool_view(&chain_view, *node.mempool);
for (auto& coin : coins) {
if (!mempool_view.GetCoin(coin.first, coin.second)) {
// Either the coin is not in the CCoinsViewCache or is spent. Clear it.
coin.second.Clear();
for (auto& [outpoint, coin] : coins) {
if (auto c{mempool_view.GetCoin(outpoint)}) {
coin = std::move(*c);
} else {
coin.Clear(); // Either the coin is not in the CCoinsViewCache or is spent
}
}
}

View file

@ -358,9 +358,7 @@ public:
std::optional<Coin> getUnspentOutput(const COutPoint& output) override
{
LOCK(::cs_main);
Coin coin;
if (chainman().ActiveChainstate().CoinsTip().GetCoin(output, coin)) return coin;
return {};
return chainman().ActiveChainstate().CoinsTip().GetCoin(output);
}
TransactionError broadcastTransaction(CTransactionRef tx, CAmount max_tx_fee, std::string& err_string) override
{