fuzz coverage

Coverage Report

Created: 2025-06-01 19:34

/Users/eugenesiegel/btc/bitcoin/src/node/coin.cpp
Line
Count
Source (jump to first uncovered line)
1
// Copyright (c) 2019-2021 The Bitcoin Core developers
2
// Distributed under the MIT software license, see the accompanying
3
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
4
5
#include <node/coin.h>
6
7
#include <node/context.h>
8
#include <txmempool.h>
9
#include <validation.h>
10
11
namespace node {
12
void FindCoins(const NodeContext& node, std::map<COutPoint, Coin>& coins)
13
0
{
14
0
    assert(node.mempool);
15
0
    assert(node.chainman);
16
0
    LOCK2(cs_main, node.mempool->cs);
Line
Count
Source
259
0
    UniqueLock criticalblock1(MaybeCheckNotHeld(cs1), #cs1, __FILE__, __LINE__); \
260
0
    UniqueLock criticalblock2(MaybeCheckNotHeld(cs2), #cs2, __FILE__, __LINE__)
17
0
    CCoinsViewCache& chain_view = node.chainman->ActiveChainstate().CoinsTip();
18
0
    CCoinsViewMemPool mempool_view(&chain_view, *node.mempool);
19
0
    for (auto& [outpoint, coin] : coins) {
20
0
        if (auto c{mempool_view.GetCoin(outpoint)}) {
21
0
            coin = std::move(*c);
22
0
        } else {
23
0
            coin.Clear(); // Either the coin is not in the CCoinsViewCache or is spent
24
0
        }
25
0
    }
26
0
}
27
} // namespace node