Browse Source

LoadWallet: acquire cs_wallet mutex before clearing setKeyPool

Make the function mutex-aware, to prevent having to lock cs_wallet
at the call site in Init.
0.10
Wladimir J. van der Laan 11 years ago
parent
commit
012ca1c9e4
  1. 2
      src/wallet.cpp

2
src/wallet.cpp

@ -1489,7 +1489,6 @@ string CWallet::SendMoneyToDestination(const CTxDestination& address, int64_t nV @@ -1489,7 +1489,6 @@ string CWallet::SendMoneyToDestination(const CTxDestination& address, int64_t nV
DBErrors CWallet::LoadWallet(bool& fFirstRunRet)
{
AssertLockHeld(cs_wallet); // setKeyPool
if (!fFileBacked)
return DB_LOAD_OK;
fFirstRunRet = false;
@ -1498,6 +1497,7 @@ DBErrors CWallet::LoadWallet(bool& fFirstRunRet) @@ -1498,6 +1497,7 @@ DBErrors CWallet::LoadWallet(bool& fFirstRunRet)
{
if (CDB::Rewrite(strWalletFile, "\x04pool"))
{
LOCK(cs_wallet);
setKeyPool.clear();
// Note: can't top-up keypool here, because wallet is locked.
// User will be prompted to unlock wallet the next operation

Loading…
Cancel
Save