aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/wallet/wallet.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/wallet/wallet.cpp b/src/wallet/wallet.cpp
index 0a06879754..d7d2927ba2 100644
--- a/src/wallet/wallet.cpp
+++ b/src/wallet/wallet.cpp
@@ -3069,12 +3069,18 @@ int64_t CWallet::GetOldestKeyPoolTime()
for(const int64_t& id : setKeyPool)
{
- if (!walletdb.ReadPool(id, keypool))
+ if (!walletdb.ReadPool(id, keypool)) {
throw std::runtime_error(std::string(__func__) + ": read failed");
- if (keypool.fInternal && keypool.nTime < oldest_internal)
+ }
+ if (keypool.fInternal && keypool.nTime < oldest_internal) {
oldest_internal = keypool.nTime;
- else if (!keypool.fInternal && keypool.nTime < oldest_external)
+ }
+ else if (!keypool.fInternal && keypool.nTime < oldest_external) {
oldest_external = keypool.nTime;
+ }
+ if (oldest_internal != now && oldest_external != now) {
+ break;
+ }
}
return std::max(oldest_internal, oldest_external);
}