diff options
author | Howard Chu <hyc@symas.com> | 2019-05-19 03:02:33 +0100 |
---|---|---|
committer | Howard Chu <hyc@symas.com> | 2019-05-19 03:02:33 +0100 |
commit | b6830db2d419850601dd45757e0f954fd7520882 (patch) | |
tree | 6ffd7440b58c974a90677dabc39a01dc99e127ea /src | |
parent | Merge pull request #5538 (diff) | |
download | monero-b6830db2d419850601dd45757e0f954fd7520882.tar.xz |
Fix #5553
Make sure the tip hash still matches the cached block
Diffstat (limited to 'src')
-rw-r--r-- | src/cryptonote_core/blockchain.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/cryptonote_core/blockchain.cpp b/src/cryptonote_core/blockchain.cpp index 39c9f8695..2e7f6247b 100644 --- a/src/cryptonote_core/blockchain.cpp +++ b/src/cryptonote_core/blockchain.cpp @@ -1373,7 +1373,8 @@ bool Blockchain::create_block_template(block& b, const crypto::hash *from_block, // just as we compare it, we'll just use a slightly old template, but // this would be the case anyway if we'd lock, and the change happened // just after the block template was created - if (!memcmp(&miner_address, &m_btc_address, sizeof(cryptonote::account_public_address)) && m_btc_nonce == ex_nonce && m_btc_pool_cookie == m_tx_pool.cookie()) { + if (!memcmp(&miner_address, &m_btc_address, sizeof(cryptonote::account_public_address)) && m_btc_nonce == ex_nonce + && m_btc_pool_cookie == m_tx_pool.cookie() && m_btc.prev_id == get_tail_id()) { MDEBUG("Using cached template"); m_btc.timestamp = time(NULL); // update timestamp unconditionally b = m_btc; |