Changeset View
Changeset View
Standalone View
Standalone View
src/txdb.cpp
Show First 20 Lines • Show All 274 Lines • ▼ Show 20 Lines | while (pcursor->Valid()) { | ||||
boost::this_thread::interruption_point(); | boost::this_thread::interruption_point(); | ||||
std::pair<char, uint256> key; | std::pair<char, uint256> key; | ||||
if (!pcursor->GetKey(key) || key.first != DB_BLOCK_INDEX) { | if (!pcursor->GetKey(key) || key.first != DB_BLOCK_INDEX) { | ||||
break; | break; | ||||
} | } | ||||
CDiskBlockIndex diskindex; | CDiskBlockIndex diskindex; | ||||
if (!pcursor->GetValue(diskindex)) { | if (!pcursor->GetValue(diskindex)) { | ||||
return error("LoadBlockIndex() : failed to read value"); | return error("%s : failed to read value", __func__); | ||||
} | } | ||||
// Construct block index object | // Construct block index object | ||||
CBlockIndex *pindexNew = insertBlockIndex(diskindex.GetBlockHash()); | CBlockIndex *pindexNew = insertBlockIndex(diskindex.GetBlockHash()); | ||||
pindexNew->pprev = insertBlockIndex(diskindex.hashPrev); | pindexNew->pprev = insertBlockIndex(diskindex.hashPrev); | ||||
pindexNew->nHeight = diskindex.nHeight; | pindexNew->nHeight = diskindex.nHeight; | ||||
pindexNew->nFile = diskindex.nFile; | pindexNew->nFile = diskindex.nFile; | ||||
pindexNew->nDataPos = diskindex.nDataPos; | pindexNew->nDataPos = diskindex.nDataPos; | ||||
pindexNew->nUndoPos = diskindex.nUndoPos; | pindexNew->nUndoPos = diskindex.nUndoPos; | ||||
pindexNew->nVersion = diskindex.nVersion; | pindexNew->nVersion = diskindex.nVersion; | ||||
pindexNew->hashMerkleRoot = diskindex.hashMerkleRoot; | pindexNew->hashMerkleRoot = diskindex.hashMerkleRoot; | ||||
pindexNew->nTime = diskindex.nTime; | pindexNew->nTime = diskindex.nTime; | ||||
pindexNew->nBits = diskindex.nBits; | pindexNew->nBits = diskindex.nBits; | ||||
pindexNew->nNonce = diskindex.nNonce; | pindexNew->nNonce = diskindex.nNonce; | ||||
pindexNew->nStatus = diskindex.nStatus; | pindexNew->nStatus = diskindex.nStatus; | ||||
pindexNew->nTx = diskindex.nTx; | pindexNew->nTx = diskindex.nTx; | ||||
if (!CheckProofOfWork(pindexNew->GetBlockHash(), pindexNew->nBits, | if (!CheckProofOfWork(pindexNew->GetBlockHash(), pindexNew->nBits, | ||||
config)) { | config)) { | ||||
return error("LoadBlockIndex(): CheckProofOfWork failed: %s", | return error("%s: CheckProofOfWork failed: %s", __func__, | ||||
pindexNew->ToString()); | pindexNew->ToString()); | ||||
} | } | ||||
pcursor->Next(); | pcursor->Next(); | ||||
} | } | ||||
return true; | return true; | ||||
} | } | ||||
▲ Show 20 Lines • Show All 133 Lines • Show Last 20 Lines |