Add some sanity checks.

This commit is contained in:
JoelKatz
2012-10-15 03:48:45 -07:00
parent 1214be1f22
commit 65395ea971

View File

@@ -222,12 +222,22 @@ void Application::loadOldLedger()
cLog(lsINFO) << "Loading ledger " << lastLedger->getHash() << " seq:" << lastLedger->getLedgerSeq();
if (lastLedger->getAccountHash().isZero())
{
cLog(lsFATAL) << "Ledger is empty.";
assert(false);
exit(-1);
}
if (!lastLedger->walkLedger())
{
cLog(lsFATAL) << "Ledger is missing nodes.";
exit(-1);
}
assert(lastLedger->getAccountHash() == lastLedger->peekAccountStateMap()->getHash());
assert(lastLedger->getTransHash() == lastLedger->peekTransactionMap()->getHash());
Ledger::pointer openLedger = boost::make_shared<Ledger>(false, boost::ref(*lastLedger));
mMasterLedger.switchLedgers(lastLedger, openLedger);
mNetOps.setLastCloseTime(lastLedger->getCloseTimeNC());