Browse Source

Use a temp pindex to avoid a const_cast in ProcessNewBlockHeaders

0.14
Matt Corallo 8 years ago
parent
commit
0df777db6d
  1. 8
      src/validation.cpp

8
src/validation.cpp

@ -3035,11 +3035,13 @@ bool ProcessNewBlockHeaders(const std::vector<CBlockHeader>& headers, CValidatio @@ -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();

Loading…
Cancel
Save