Fix spurious synchronization status msgs
Only update target height if it's actually greater than the current target. Only display "synchronized" when current height equals target.
This commit is contained in:
parent
3f171b931f
commit
424b76a4e5
1 changed files with 5 additions and 1 deletions
|
@ -265,14 +265,17 @@ namespace cryptonote
|
|||
if(context.m_state == cryptonote_connection_context::state_synchronizing)
|
||||
return true;
|
||||
|
||||
uint64_t target = m_core.get_target_blockchain_height();
|
||||
if(m_core.have_block(hshd.top_id))
|
||||
{
|
||||
context.m_state = cryptonote_connection_context::state_normal;
|
||||
if(is_inital)
|
||||
if(is_inital && target == m_core.get_current_blockchain_height())
|
||||
on_connection_synchronized();
|
||||
return true;
|
||||
}
|
||||
|
||||
if (hshd.current_height > target)
|
||||
{
|
||||
/* As I don't know if accessing hshd from core could be a good practice,
|
||||
I prefer pushing target height to the core at the same time it is pushed to the user.
|
||||
Nz. */
|
||||
|
@ -286,6 +289,7 @@ namespace cryptonote
|
|||
<< " [Your node is " << std::abs(diff) << " blocks (" << ((abs(diff) - diff_v2) / (24 * 60 * 60 / DIFFICULTY_TARGET_V1)) + (diff_v2 / (24 * 60 * 60 / DIFFICULTY_TARGET_V2)) << " days) "
|
||||
<< (0 <= diff ? std::string("behind") : std::string("ahead"))
|
||||
<< "] " << ENDL << "SYNCHRONIZATION started");
|
||||
}
|
||||
LOG_PRINT_L1("Remote blockchain height: " << hshd.current_height << ", id: " << hshd.top_id);
|
||||
context.m_state = cryptonote_connection_context::state_synchronizing;
|
||||
context.m_remote_blockchain_height = hshd.current_height;
|
||||
|
|
Loading…
Reference in a new issue