diff options
| author | Alex Morcos <[email protected]> | 2017-06-08 16:56:50 -0400 |
|---|---|---|
| committer | Alex Morcos <[email protected]> | 2017-06-08 16:56:50 -0400 |
| commit | 525769853efd7796679bf95d069a432df46d8e35 (patch) | |
| tree | 9a46b762fe85969d5d0aa8b23e875972dd271d8b /src | |
| parent | Merge #10481: Decodehextx scripts sanity check (diff) | |
| download | discoin-525769853efd7796679bf95d069a432df46d8e35.tar.xz discoin-525769853efd7796679bf95d069a432df46d8e35.zip | |
Change semantics of HaveCoinInCache to match HaveCoin
Previously it was possible for HaveCoinInCache to return true for a spent
coin. It is more clear to keep the semantics the same. HaveCoinInCache is
used for two reasons:
- tracking coins we may want to uncache, in which case it is unlikely there
would be spent coins we could uncache (not dirty)
- optimistically checking whether we have already included a tx in the
blockchain, in which case a spent coin is not a reliable indicator that we have.
Diffstat (limited to 'src')
| -rw-r--r-- | src/coins.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/coins.cpp b/src/coins.cpp index b45fc7633..b62d0a64d 100644 --- a/src/coins.cpp +++ b/src/coins.cpp @@ -124,7 +124,7 @@ bool CCoinsViewCache::HaveCoin(const COutPoint &outpoint) const { bool CCoinsViewCache::HaveCoinInCache(const COutPoint &outpoint) const { CCoinsMap::const_iterator it = cacheCoins.find(outpoint); - return it != cacheCoins.end(); + return (it != cacheCoins.end() && !it->second.coin.IsSpent()); } uint256 CCoinsViewCache::GetBestBlock() const { |