obtain cs_wallet mutex to protect vchDefaultKey

This commit is contained in:
Gavin Andresen 2011-09-01 10:58:08 -04:00
parent 123e5bd998
commit ed02c95d50

View File

@ -1280,6 +1280,8 @@ bool CWallet::GetKeyFromPool(vector<unsigned char>& result, bool fAllowReuse)
{ {
int64 nIndex = 0; int64 nIndex = 0;
CKeyPool keypool; CKeyPool keypool;
CRITICAL_BLOCK(cs_wallet)
{
ReserveKeyFromKeyPool(nIndex, keypool); ReserveKeyFromKeyPool(nIndex, keypool);
if (nIndex == -1) if (nIndex == -1)
{ {
@ -1294,6 +1296,7 @@ bool CWallet::GetKeyFromPool(vector<unsigned char>& result, bool fAllowReuse)
} }
KeepKey(nIndex); KeepKey(nIndex);
result = keypool.vchPubKey; result = keypool.vchPubKey;
}
return true; return true;
} }