diff options
Diffstat (limited to 'src/cryptonote_core')
-rw-r--r-- | src/cryptonote_core/cryptonote_core.cpp | 12 | ||||
-rw-r--r-- | src/cryptonote_core/cryptonote_core.h | 2 |
2 files changed, 11 insertions, 3 deletions
diff --git a/src/cryptonote_core/cryptonote_core.cpp b/src/cryptonote_core/cryptonote_core.cpp index ac2d3023a..046b0eca0 100644 --- a/src/cryptonote_core/cryptonote_core.cpp +++ b/src/cryptonote_core/cryptonote_core.cpp @@ -421,8 +421,6 @@ namespace cryptonote CHECK_AND_ASSERT_MES(r, false, "Failed to initialize blockchain storage"); block_sync_size = command_line::get_arg(vm, command_line::arg_block_sync_size); - if (block_sync_size == 0) - block_sync_size = BLOCKS_SYNCHRONIZING_DEFAULT_COUNT; MGINFO("Loading checkpoints"); @@ -788,6 +786,16 @@ namespace cryptonote return true; } //----------------------------------------------------------------------------------------------- + size_t core::get_block_sync_size(uint64_t height) const + { + static const uint64_t quick_height = m_testnet ? 801219 : 1220516; + if (block_sync_size > 0) + return block_sync_size; + if (height >= quick_height) + return BLOCKS_SYNCHRONIZING_DEFAULT_COUNT; + return BLOCKS_SYNCHRONIZING_DEFAULT_COUNT_PRE_V4; + } + //----------------------------------------------------------------------------------------------- std::pair<uint64_t, uint64_t> core::get_coinbase_tx_sum(const uint64_t start_offset, const size_t count) { uint64_t emission_amount = 0; diff --git a/src/cryptonote_core/cryptonote_core.h b/src/cryptonote_core/cryptonote_core.h index 63d3cd16d..982d67169 100644 --- a/src/cryptonote_core/cryptonote_core.h +++ b/src/cryptonote_core/cryptonote_core.h @@ -691,7 +691,7 @@ namespace cryptonote * * @return the number of blocks to sync in one go */ - size_t get_block_sync_size() const { return block_sync_size; } + size_t get_block_sync_size(uint64_t height) const; /** * @brief get the sum of coinbase tx amounts between blocks |