mirror of
https://git.wownero.com/wownero/wownero.git
synced 2024-12-23 08:28:52 +00:00
Merge pull request 'wallet2: fix outdated wallet check' (#473) from wowario/wownero:wow-v0.11 into master
Reviewed-on: https://git.wownero.com/wownero/wownero/pulls/473
This commit is contained in:
commit
b0ef1ce118
@ -2945,16 +2945,20 @@ void check_block_hard_fork_version(cryptonote::network_type nettype, uint8_t hf_
|
|||||||
const hardfork_t *wallet_hard_forks = nettype == TESTNET ? testnet_hard_forks
|
const hardfork_t *wallet_hard_forks = nettype == TESTNET ? testnet_hard_forks
|
||||||
: nettype == STAGENET ? stagenet_hard_forks : mainnet_hard_forks;
|
: nettype == STAGENET ? stagenet_hard_forks : mainnet_hard_forks;
|
||||||
|
|
||||||
wallet_is_outdated = static_cast<size_t>(hf_version) > wallet_num_hard_forks;
|
wallet_is_outdated = hf_version > wallet_hard_forks[wallet_num_hard_forks-1].version;
|
||||||
if (wallet_is_outdated)
|
if (wallet_is_outdated)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
// check block's height falls within wallet's expected range for block's given version
|
// check block's height falls within wallet's expected range for block's given version
|
||||||
// Wownero version 7 starts from block 0
|
size_t fork_index;
|
||||||
uint64_t start_height = hf_version == 7 ? 0 : wallet_hard_forks[hf_version - 7].height;
|
for (fork_index = 0; fork_index < wallet_num_hard_forks; ++fork_index)
|
||||||
uint64_t end_height = static_cast<size_t>(hf_version) + 1 > wallet_num_hard_forks
|
if (wallet_hard_forks[fork_index].version == hf_version)
|
||||||
|
break;
|
||||||
|
THROW_WALLET_EXCEPTION_IF(fork_index == wallet_num_hard_forks, error::wallet_internal_error, "Fork not found in table");
|
||||||
|
uint64_t start_height = wallet_hard_forks[fork_index].height;
|
||||||
|
uint64_t end_height = fork_index == wallet_num_hard_forks - 1
|
||||||
? std::numeric_limits<uint64_t>::max()
|
? std::numeric_limits<uint64_t>::max()
|
||||||
: wallet_hard_forks[hf_version - 6].height;
|
: wallet_hard_forks[fork_index + 1].height;
|
||||||
|
|
||||||
daemon_is_outdated = height < start_height || height >= end_height;
|
daemon_is_outdated = height < start_height || height >= end_height;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user