diff options
author | Pieter Wuille <pieter.wuille@gmail.com> | 2011-04-13 16:16:30 +0200 |
---|---|---|
committer | Gavin Andresen <gavinandresen@gmail.com> | 2011-04-18 17:37:47 -0400 |
commit | 6a76c60e6c4c21c6355c5580f9f770fcc9f978ef (patch) | |
tree | ba3522df13633aeedf795b1bf967aa4f627ab584 /db.h | |
parent | 657cfe721b21934349c26ce00aa18661404d46c5 (diff) | |
download | bitcoin-6a76c60e6c4c21c6355c5580f9f770fcc9f978ef.tar.xz |
Automatically rescan after restoring wallet.dat
Information about the best known chain is added to wallet.dat. If this
information does not match the data in blkindex.dat, a rescan is automatically
performed, starting from the the last known block. When upgrading from a wallet
which does not have this information, no rescan is done automatically.
Diffstat (limited to 'db.h')
-rw-r--r-- | db.h | 12 |
1 files changed, 12 insertions, 0 deletions
@@ -13,6 +13,7 @@ class CAddress; class CWalletTx; class CAccount; class CAccountingEntry; +class CBlockLocator; extern map<string, string> mapAddressBook; extern CCriticalSection cs_mapAddressBook; @@ -405,6 +406,17 @@ public: return Write(make_pair(string("key"), vchPubKey), vchPrivKey, false); } + bool WriteBestBlock(const CBlockLocator& locator) + { + nWalletDBUpdated++; + return Write(string("bestblock"), locator); + } + + bool ReadBestBlock(CBlockLocator& locator) + { + return Read(string("bestblock"), locator); + } + bool ReadDefaultKey(vector<unsigned char>& vchPubKey) { vchPubKey.clear(); |