diff options
author | Russell Yanofsky <russ@yanofsky.org> | 2017-07-28 19:42:27 -0400 |
---|---|---|
committer | Russell Yanofsky <russ@yanofsky.org> | 2019-02-22 15:43:02 -0400 |
commit | cd32160af0528cc746968ee0eadf4f63c98665f2 (patch) | |
tree | 38c2df53e845cb7c3206507ca23d7a5d59a75e72 /src | |
parent | 291276f7f40df9fcd62e54c016953705bf0ed04a (diff) |
Remove use of GetTransactionAncestry in wallet code
This commit does not change behavior.
Diffstat (limited to 'src')
-rw-r--r-- | src/interfaces/chain.cpp | 4 | ||||
-rw-r--r-- | src/interfaces/chain.h | 4 | ||||
-rw-r--r-- | src/wallet/wallet.cpp | 2 |
3 files changed, 9 insertions, 1 deletions
diff --git a/src/interfaces/chain.cpp b/src/interfaces/chain.cpp index 8c5921970b..d7bad0543c 100644 --- a/src/interfaces/chain.cpp +++ b/src/interfaces/chain.cpp @@ -196,6 +196,10 @@ public: auto it_mp = ::mempool.mapTx.find(txid); return it_mp != ::mempool.mapTx.end() && it_mp->GetCountWithDescendants() > 1; } + void getTransactionAncestry(const uint256& txid, size_t& ancestors, size_t& descendants) override + { + ::mempool.GetTransactionAncestry(txid, ancestors, descendants); + } }; } // namespace diff --git a/src/interfaces/chain.h b/src/interfaces/chain.h index aa4f17a8ec..33bbfefd9f 100644 --- a/src/interfaces/chain.h +++ b/src/interfaces/chain.h @@ -9,6 +9,7 @@ #include <policy/rbf.h> // For RBFTransactionState #include <memory> +#include <stddef.h> #include <stdint.h> #include <string> #include <vector> @@ -138,6 +139,9 @@ public: //! Check if transaction has descendants in mempool. virtual bool hasDescendantsInMempool(const uint256& txid) = 0; + + //! Calculate mempool ancestor and descendant counts for the given transaction. + virtual void getTransactionAncestry(const uint256& txid, size_t& ancestors, size_t& descendants) = 0; }; //! Interface to let node manage chain clients (wallets, or maybe tools for diff --git a/src/wallet/wallet.cpp b/src/wallet/wallet.cpp index eb99c6cd77..a77b1c60f2 100644 --- a/src/wallet/wallet.cpp +++ b/src/wallet/wallet.cpp @@ -4528,7 +4528,7 @@ std::vector<OutputGroup> CWallet::GroupOutputs(const std::vector<COutput>& outpu CInputCoin input_coin = output.GetInputCoin(); size_t ancestors, descendants; - mempool.GetTransactionAncestry(output.tx->GetHash(), ancestors, descendants); + chain().getTransactionAncestry(output.tx->GetHash(), ancestors, descendants); if (!single_coin && ExtractDestination(output.tx->tx->vout[output.i].scriptPubKey, dst)) { // Limit output groups to no more than 10 entries, to protect // against inadvertently creating a too-large transaction |