Browse Source

CWallet::TopUpKeyPool() takes optional pool size argument

Also, GetKeyPoolSize() now returns an accurate type, unsigned int.
0.10
Jeff Garzik 12 years ago
parent
commit
13dd2d090e
  1. 2
      src/rpcwallet.cpp
  2. 9
      src/wallet.cpp
  3. 4
      src/wallet.h

2
src/rpcwallet.cpp

@ -81,7 +81,7 @@ Value getinfo(const Array& params, bool fHelp) @@ -81,7 +81,7 @@ Value getinfo(const Array& params, bool fHelp)
obj.push_back(Pair("difficulty", (double)GetDifficulty()));
obj.push_back(Pair("testnet", TestNet()));
obj.push_back(Pair("keypoololdest", (boost::int64_t)pwalletMain->GetOldestKeyPoolTime()));
obj.push_back(Pair("keypoolsize", pwalletMain->GetKeyPoolSize()));
obj.push_back(Pair("keypoolsize", (int)pwalletMain->GetKeyPoolSize()));
obj.push_back(Pair("paytxfee", ValueFromAmount(nTransactionFee)));
if (pwalletMain->IsCrypted())
obj.push_back(Pair("unlocked_until", (boost::int64_t)nWalletUnlockTime));

9
src/wallet.cpp

@ -1553,7 +1553,7 @@ bool CWallet::NewKeyPool() @@ -1553,7 +1553,7 @@ bool CWallet::NewKeyPool()
return true;
}
bool CWallet::TopUpKeyPool()
bool CWallet::TopUpKeyPool(unsigned int kpSize)
{
{
LOCK(cs_wallet);
@ -1564,7 +1564,12 @@ bool CWallet::TopUpKeyPool() @@ -1564,7 +1564,12 @@ bool CWallet::TopUpKeyPool()
CWalletDB walletdb(strWalletFile);
// Top up key pool
unsigned int nTargetSize = max(GetArg("-keypool", 100), 0LL);
unsigned int nTargetSize;
if (kpSize > 0)
nTargetSize = kpSize;
else
nTargetSize = max(GetArg("-keypool", 100), 0LL);
while (setKeyPool.size() < (nTargetSize + 1))
{
int64 nEnd = 1;

4
src/wallet.h

@ -195,7 +195,7 @@ public: @@ -195,7 +195,7 @@ public:
std::string SendMoneyToDestination(const CTxDestination &address, int64 nValue, CWalletTx& wtxNew, bool fAskFee=false);
bool NewKeyPool();
bool TopUpKeyPool();
bool TopUpKeyPool(unsigned int kpSize = 0);
int64 AddReserveKey(const CKeyPool& keypool);
void ReserveKeyFromKeyPool(int64& nIndex, CKeyPool& keypool);
void KeepKey(int64 nIndex);
@ -292,7 +292,7 @@ public: @@ -292,7 +292,7 @@ public:
}
}
int GetKeyPoolSize()
unsigned int GetKeyPoolSize()
{
return setKeyPool.size();
}

Loading…
Cancel
Save