aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGregory Sanders <gsanders87@gmail.com>2016-12-19 09:35:23 -0500
committerGregory Sanders <gsanders87@gmail.com>2016-12-19 20:51:34 -0500
commitcee16123f550f6baad0205f776831f39d026758b (patch)
tree295fd9d92ba7d3cade9d16c7fb9ef16fc0dafd08 /src
parentaf9bedbff68b8aac64f2dbdf396409a541865188 (diff)
reduce number of lookups in TransactionWithinChainLimit
Diffstat (limited to 'src')
-rw-r--r--src/txmempool.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/txmempool.cpp b/src/txmempool.cpp
index f87713006a..f11a36fd40 100644
--- a/src/txmempool.cpp
+++ b/src/txmempool.cpp
@@ -1145,7 +1145,7 @@ void CTxMemPool::TrimToSize(size_t sizelimit, std::vector<uint256>* pvNoSpendsRe
bool CTxMemPool::TransactionWithinChainLimit(const uint256& txid, size_t chainLimit) const {
LOCK(cs);
- if (exists(txid) && std::max(mapTx.find(txid)->GetCountWithAncestors(), mapTx.find(txid)->GetCountWithDescendants()) >= chainLimit)
- return false;
- return true;
+ auto it = mapTx.find(txid);
+ return it == mapTx.end() || (it->GetCountWithAncestors() < chainLimit &&
+ it->GetCountWithDescendants() < chainLimit);
}