refactor: add a function for determining if a block is pruned or not

pull/585/head
Karl-Johan Alm 7 years ago
parent f8a29ca823
commit e9a1881b90
No known key found for this signature in database
GPG Key ID: 57AF762DB3353322

@ -217,7 +217,7 @@ static bool rest_block(HTTPRequest* req,
return RESTERR(req, HTTP_NOT_FOUND, hashStr + " not found"); return RESTERR(req, HTTP_NOT_FOUND, hashStr + " not found");
} }
if (fHavePruned && !(pblockindex->nStatus & BLOCK_HAVE_DATA) && pblockindex->nTx > 0) if (IsBlockPruned(pblockindex))
return RESTERR(req, HTTP_NOT_FOUND, hashStr + " not available (pruned data)"); return RESTERR(req, HTTP_NOT_FOUND, hashStr + " not available (pruned data)");
if (!ReadBlockFromDisk(block, pblockindex, Params().GetConsensus())) if (!ReadBlockFromDisk(block, pblockindex, Params().GetConsensus()))

@ -742,7 +742,7 @@ static UniValue getblockheader(const JSONRPCRequest& request)
static CBlock GetBlockChecked(const CBlockIndex* pblockindex) static CBlock GetBlockChecked(const CBlockIndex* pblockindex)
{ {
CBlock block; CBlock block;
if (fHavePruned && !(pblockindex->nStatus & BLOCK_HAVE_DATA) && pblockindex->nTx > 0) { if (IsBlockPruned(pblockindex)) {
throw JSONRPCError(RPC_MISC_ERROR, "Block not available (pruned data)"); throw JSONRPCError(RPC_MISC_ERROR, "Block not available (pruned data)");
} }

@ -497,4 +497,10 @@ bool DumpMempool();
/** Load the mempool from disk. */ /** Load the mempool from disk. */
bool LoadMempool(); bool LoadMempool();
//! Check whether the block associated with this index entry is pruned or not.
inline bool IsBlockPruned(const CBlockIndex* pblockindex)
{
return (fHavePruned && !(pblockindex->nStatus & BLOCK_HAVE_DATA) && pblockindex->nTx > 0);
}
#endif // BITCOIN_VALIDATION_H #endif // BITCOIN_VALIDATION_H

Loading…
Cancel
Save