blockchain: fix off by one getting blocks

This commit is contained in:
moneromooo-monero 2017-09-27 00:31:06 +01:00
parent 5f7cddeb53
commit 269a2a01ef
No known key found for this signature in database
GPG Key ID: 686F07454D6CEFC3
1 changed files with 2 additions and 2 deletions

View File

@ -1444,7 +1444,7 @@ bool Blockchain::get_blocks(uint64_t start_offset, size_t count, std::list<std::
{ {
LOG_PRINT_L3("Blockchain::" << __func__); LOG_PRINT_L3("Blockchain::" << __func__);
CRITICAL_REGION_LOCAL(m_blockchain_lock); CRITICAL_REGION_LOCAL(m_blockchain_lock);
if(start_offset > m_db->height()) if(start_offset >= m_db->height())
return false; return false;
if (!get_blocks(start_offset, count, blocks)) if (!get_blocks(start_offset, count, blocks))
@ -1466,7 +1466,7 @@ bool Blockchain::get_blocks(uint64_t start_offset, size_t count, std::list<std::
{ {
LOG_PRINT_L3("Blockchain::" << __func__); LOG_PRINT_L3("Blockchain::" << __func__);
CRITICAL_REGION_LOCAL(m_blockchain_lock); CRITICAL_REGION_LOCAL(m_blockchain_lock);
if(start_offset > m_db->height()) if(start_offset >= m_db->height())
return false; return false;
for(size_t i = start_offset; i < start_offset + count && i < m_db->height();i++) for(size_t i = start_offset; i < start_offset + count && i < m_db->height();i++)