From cd3f4aa80810fc077c7f9528a4ef53c1438c86e1 Mon Sep 17 00:00:00 2001 From: Andrew Chow Date: Mon, 18 Jun 2018 15:21:32 -0700 Subject: [PATCH] Decouple wallet version from client version Instead of comparing version numbers in the wallet to the client version number, compare them to the latest supported wallet version in the client. This allows for wallet version numbers to be unrelated to the client version number. --- src/wallet/wallet.cpp | 2 +- src/wallet/walletdb.cpp | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/wallet/wallet.cpp b/src/wallet/wallet.cpp index 014a59ce2..d0c8096bb 100644 --- a/src/wallet/wallet.cpp +++ b/src/wallet/wallet.cpp @@ -4104,7 +4104,7 @@ std::shared_ptr CWallet::CreateWalletFromFile(const std::string& name, if (nMaxVersion == 0) // the -upgradewallet without argument case { LogPrintf("Performing wallet upgrade to %i\n", FEATURE_LATEST); - nMaxVersion = CLIENT_VERSION; + nMaxVersion = FEATURE_LATEST; walletInstance->SetMinVersion(FEATURE_LATEST); // permanently upgrade the wallet immediately } else diff --git a/src/wallet/walletdb.cpp b/src/wallet/walletdb.cpp index 4b4460a79..9c25ee7d7 100644 --- a/src/wallet/walletdb.cpp +++ b/src/wallet/walletdb.cpp @@ -537,7 +537,7 @@ DBErrors WalletBatch::LoadWallet(CWallet* pwallet) int nMinVersion = 0; if (m_batch.Read((std::string)"minversion", nMinVersion)) { - if (nMinVersion > CLIENT_VERSION) + if (nMinVersion > FEATURE_LATEST) return DBErrors::TOO_NEW; pwallet->LoadMinVersion(nMinVersion); } @@ -640,7 +640,7 @@ DBErrors WalletBatch::FindWalletTx(std::vector& vTxHash, std::vector CLIENT_VERSION) + if (nMinVersion > FEATURE_LATEST) return DBErrors::TOO_NEW; }