mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-06-29 18:20:58 +02:00
wallet: refactor GetClosestWalletFeature()
This commit is contained in:
@ -87,13 +87,9 @@ bool IsFeatureSupported(int wallet_version, int feature_version)
|
|||||||
|
|
||||||
WalletFeature GetClosestWalletFeature(int version)
|
WalletFeature GetClosestWalletFeature(int version)
|
||||||
{
|
{
|
||||||
if (version >= FEATURE_LATEST) return FEATURE_LATEST;
|
const std::array<WalletFeature, 8> wallet_features{{FEATURE_LATEST, FEATURE_PRE_SPLIT_KEYPOOL, FEATURE_NO_DEFAULT_KEY, FEATURE_HD_SPLIT, FEATURE_HD, FEATURE_COMPRPUBKEY, FEATURE_WALLETCRYPT, FEATURE_BASE}};
|
||||||
if (version >= FEATURE_PRE_SPLIT_KEYPOOL) return FEATURE_PRE_SPLIT_KEYPOOL;
|
for (const WalletFeature& wf : wallet_features) {
|
||||||
if (version >= FEATURE_NO_DEFAULT_KEY) return FEATURE_NO_DEFAULT_KEY;
|
if (version >= wf) return wf;
|
||||||
if (version >= FEATURE_HD_SPLIT) return FEATURE_HD_SPLIT;
|
}
|
||||||
if (version >= FEATURE_HD) return FEATURE_HD;
|
|
||||||
if (version >= FEATURE_COMPRPUBKEY) return FEATURE_COMPRPUBKEY;
|
|
||||||
if (version >= FEATURE_WALLETCRYPT) return FEATURE_WALLETCRYPT;
|
|
||||||
if (version >= FEATURE_BASE) return FEATURE_BASE;
|
|
||||||
return static_cast<WalletFeature>(0);
|
return static_cast<WalletFeature>(0);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user