|
|
|
@ -670,7 +670,7 @@ void CWalletDB::ListAccountCreditDebit(const string& strAccount, list<CAccountin
@@ -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)
@@ -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)
@@ -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)
@@ -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)
@@ -839,7 +846,7 @@ bool CWalletDB::LoadWallet(CWallet* pwallet)
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return true; |
|
|
|
|
return DB_LOAD_OK; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
void ThreadFlushWalletDB(void* parg) |
|
|
|
|