LCOV - code coverage report
Current view: top level - src/node - coin.cpp (source / functions) Hit Total Coverage
Test: total_coverage.info Lines: 9 10 90.0 %
Date: 2020-09-26 01:30:44 Functions: 1 1 100.0 %

          Line data    Source code
       1             : // Copyright (c) 2019 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        1853 : void FindCoins(const NodeContext& node, std::map<COutPoint, Coin>& coins)
      12             : {
      13        1853 :     assert(node.mempool);
      14        1853 :     LOCK2(cs_main, node.mempool->cs);
      15        1853 :     CCoinsViewCache& chain_view = ::ChainstateActive().CoinsTip();
      16        1853 :     CCoinsViewMemPool mempool_view(&chain_view, *node.mempool);
      17       10631 :     for (auto& coin : coins) {
      18        8778 :         if (!mempool_view.GetCoin(coin.first, coin.second)) {
      19             :             // Either the coin is not in the CCoinsViewCache or is spent. Clear it.
      20          88 :             coin.second.Clear();
      21             :         }
      22           0 :     }
      23        1853 : }

Generated by: LCOV version 1.15