From 83e7989a99772ed9443d70956ec0b619911a97f8 Mon Sep 17 00:00:00 2001 From: moneroexamples Date: Tue, 21 Feb 2017 02:20:00 +0000 Subject: [PATCH] update_current_blockchain_height() added --- src/CurrentBlockchainStatus.cpp | 9 ++++++++- src/CurrentBlockchainStatus.h | 3 +++ src/TxSearch.cpp | 6 ++++-- 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/src/CurrentBlockchainStatus.cpp b/src/CurrentBlockchainStatus.cpp index a8481be..a8be0b1 100644 --- a/src/CurrentBlockchainStatus.cpp +++ b/src/CurrentBlockchainStatus.cpp @@ -70,7 +70,7 @@ CurrentBlockchainStatus::start_monitor_blockchain_thread() { while (true) { - current_height = get_current_blockchain_height(); + update_current_blockchain_height(); read_mempool(); cout << "Check block height: " << current_height; cout << " no of mempool txs: " << mempool_txs.size(); @@ -105,6 +105,13 @@ CurrentBlockchainStatus::get_current_blockchain_height() } + +void +CurrentBlockchainStatus::update_current_blockchain_height() +{ + current_height = get_current_blockchain_height(); +} + void CurrentBlockchainStatus::set_blockchain_path(const string &path) { diff --git a/src/CurrentBlockchainStatus.h b/src/CurrentBlockchainStatus.h index 59530d1..d319c49 100644 --- a/src/CurrentBlockchainStatus.h +++ b/src/CurrentBlockchainStatus.h @@ -81,6 +81,9 @@ struct CurrentBlockchainStatus uint64_t get_current_blockchain_height(); + static void + update_current_blockchain_height(); + static void set_blockchain_path(const string &path); diff --git a/src/TxSearch.cpp b/src/TxSearch.cpp index 22a5f74..414f815 100644 --- a/src/TxSearch.cpp +++ b/src/TxSearch.cpp @@ -116,8 +116,10 @@ TxSearch::search() { cerr << "Cant get block of height: " + to_string(searched_blk_no) << endl; - --searched_blk_no; // just go back one block, and retry - // maybe this was laternative block and got orphaned. + // update of current_height, as maybe top block(s) + // were dropped due to reorganization. + CurrentBlockchainStatus::update_current_blockchain_height(); + continue; }