diff options
| author | Matt Corallo <[email protected]> | 2011-07-05 03:06:19 +0200 |
|---|---|---|
| committer | Matt Corallo <[email protected]> | 2011-07-05 18:36:01 +0200 |
| commit | 7ec552676c66488fe00fb503d02ec4a389a715b7 (patch) | |
| tree | 6791d8dd85e2aaa82ee7b2396b123716ccd093f2 /src/db.cpp | |
| parent | Merge pull request #379 from gavinandresen/nocommas (diff) | |
| download | discoin-7ec552676c66488fe00fb503d02ec4a389a715b7.tar.xz discoin-7ec552676c66488fe00fb503d02ec4a389a715b7.zip | |
Add minversion to wallet.
Diffstat (limited to 'src/db.cpp')
| -rw-r--r-- | src/db.cpp | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/src/db.cpp b/src/db.cpp index f044355a3..9e13727ae 100644 --- a/src/db.cpp +++ b/src/db.cpp @@ -670,7 +670,7 @@ void CWalletDB::ListAccountCreditDebit(const string& strAccount, list<CAccountin } -bool CWalletDB::LoadWallet(CWallet* pwallet) +int CWalletDB::LoadWallet(CWallet* pwallet) { pwallet->vchDefaultKey.clear(); int nFileVersion = 0; @@ -690,7 +690,7 @@ bool CWalletDB::LoadWallet(CWallet* pwallet) // Get cursor Dbc* pcursor = GetCursor(); if (!pcursor) - return false; + return DB_CORRUPT; loop { @@ -701,7 +701,7 @@ bool CWalletDB::LoadWallet(CWallet* pwallet) if (ret == DB_NOTFOUND) break; else if (ret != 0) - return false; + return DB_CORRUPT; // Unserialize // Taking advantage of the fact that pair serialization @@ -809,6 +809,13 @@ bool CWalletDB::LoadWallet(CWallet* pwallet) if (strKey == "addrProxy") ssValue >> addrProxy; if (fHaveUPnP && strKey == "fUseUPnP") ssValue >> fUseUPnP; } + else if (strType == "minversion") + { + int nMinVersion = 0; + ssValue >> nMinVersion; + if (nMinVersion > VERSION) + return DB_TOO_NEW; + } } pcursor->close(); } @@ -839,7 +846,7 @@ bool CWalletDB::LoadWallet(CWallet* pwallet) } - return true; + return DB_LOAD_OK; } void ThreadFlushWalletDB(void* parg) |