aboutsummaryrefslogtreecommitdiff
path: root/src/wallet/wallet.h
diff options
context:
space:
mode:
authorWladimir J. van der Laan <laanwj@gmail.com>2016-08-24 10:32:59 +0200
committerWladimir J. van der Laan <laanwj@gmail.com>2016-08-24 10:33:16 +0200
commitf9167003d947fa994cdd14406da79a1758acb7b3 (patch)
treeed03842a9672d119ec97c1a0f0a931f49e3f7319 /src/wallet/wallet.h
parent9358893518a19f38eab9186c768ad81c7a2f9cec (diff)
parent8680d3aa800aa4fab8c321b92cc7f3fa97a8a0a3 (diff)
Merge #8445: Move CWallet::setKeyPool to private section of CWallet.
8680d3a Move wallet initialization logic from AppInit2 to CWallet::InitLoadWallet (Patrick Strateman) e86eb71 Move CWallet::setKeyPool to private section of CWallet (Patrick Strateman)
Diffstat (limited to 'src/wallet/wallet.h')
-rw-r--r--src/wallet/wallet.h15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/wallet/wallet.h b/src/wallet/wallet.h
index 30f092e9a8..c06513650c 100644
--- a/src/wallet/wallet.h
+++ b/src/wallet/wallet.h
@@ -582,6 +582,8 @@ private:
CHDChain hdChain;
bool fFileBacked;
+
+ std::set<int64_t> setKeyPool;
public:
/*
* Main wallet lock.
@@ -594,7 +596,18 @@ public:
std::string strWalletFile;
- std::set<int64_t> setKeyPool;
+ void LoadKeyPool(int nIndex, const CKeyPool &keypool)
+ {
+ setKeyPool.insert(nIndex);
+
+ // If no metadata exists yet, create a default with the pool key's
+ // creation time. Note that this may be overwritten by actually
+ // stored metadata for that key later, which is fine.
+ CKeyID keyid = keypool.vchPubKey.GetID();
+ if (mapKeyMetadata.count(keyid) == 0)
+ mapKeyMetadata[keyid] = CKeyMetadata(keypool.nTime);
+ }
+
std::map<CKeyID, CKeyMetadata> mapKeyMetadata;
typedef std::map<unsigned int, CMasterKey> MasterKeyMap;