aboutsummaryrefslogtreecommitdiff
path: root/src/coins.h
diff options
context:
space:
mode:
authorRussell Yanofsky <russ@yanofsky.org>2017-06-07 13:00:11 -0400
committerRussell Yanofsky <russ@yanofsky.org>2017-06-07 13:00:11 -0400
commit24e44c354d5b9174cb9cb7d157a985e197aa7886 (patch)
treed48625d1dd888a11f8f73050daabc6a156802eff /src/coins.h
parentbea5b00cfe95cd37832305c0f93c339a22a7d79d (diff)
downloadbitcoin-24e44c354d5b9174cb9cb7d157a985e197aa7886.tar.xz
Don't return stale data from CCoinsViewCache::Cursor()
CCoinsViewCache doesn't actually support cursor iteration returning the current contents of the cache, so raise an error when the cursor method is called instead of returning a cursor that iterates over stale data. Also update the gettxoutsetinfo RPC which was relying on the old behavior to be explicit about which view it is returning data about.
Diffstat (limited to 'src/coins.h')
-rw-r--r--src/coins.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/coins.h b/src/coins.h
index 476db8f37c..b10c7ea9a0 100644
--- a/src/coins.h
+++ b/src/coins.h
@@ -212,6 +212,9 @@ public:
uint256 GetBestBlock() const;
void SetBestBlock(const uint256 &hashBlock);
bool BatchWrite(CCoinsMap &mapCoins, const uint256 &hashBlock);
+ CCoinsViewCursor* Cursor() const {
+ throw std::logic_error("CCoinsViewCache cursor iteration not supported.");
+ }
/**
* Check if we have the given utxo already loaded in this cache.