aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatt Corallo <git@bluematt.me>2017-01-11 14:47:52 -0800
committerMatt Corallo <git@bluematt.me>2017-01-11 14:47:52 -0800
commit0df777db6d62a4fc3353edecdcc0094dc1abbd18 (patch)
tree4d684965107e3322c6a83b8da063d917b0f3fdcc
parentc1ae4fcf7d5d85c182e36ff6f7a529f8a84aa372 (diff)
Use a temp pindex to avoid a const_cast in ProcessNewBlockHeaders
-rw-r--r--src/validation.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/validation.cpp b/src/validation.cpp
index 20d75d957f..5f0cf10cec 100644
--- a/src/validation.cpp
+++ b/src/validation.cpp
@@ -3035,11 +3035,13 @@ bool ProcessNewBlockHeaders(const std::vector<CBlockHeader>& headers, CValidatio
{
LOCK(cs_main);
for (const CBlockHeader& header : headers) {
- // cast away the ppindex-returns-const CBlockIndex - we're just assigning it to a CBlockIndex*
- // that we own and is updated non-const anyway
- if (!AcceptBlockHeader(header, state, chainparams, const_cast<CBlockIndex**>(ppindex))) {
+ CBlockIndex *pindex = NULL; // Use a temp pindex instead of ppindex to avoid a const_cast
+ if (!AcceptBlockHeader(header, state, chainparams, &pindex)) {
return false;
}
+ if (ppindex) {
+ *ppindex = pindex;
+ }
}
}
NotifyHeaderTip();