From 46062ea1686e9faf88aa75e5dba2e5d3eacac367 Mon Sep 17 00:00:00 2001 From: Lee Bousfield Date: Thu, 23 Aug 2018 21:55:07 -0500 Subject: [PATCH] Add missing should_update_winner parameter to confirm_if_quorum --- rai/node/node.cpp | 6 +++--- rai/node/node.hpp | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/rai/node/node.cpp b/rai/node/node.cpp index 36efc958df..02e87407b1 100644 --- a/rai/node/node.cpp +++ b/rai/node/node.cpp @@ -4956,7 +4956,7 @@ rai::tally_t rai::election::tally (MDB_txn * transaction_a) return result; } -void rai::election::confirm_if_quorum (MDB_txn * transaction_a) +void rai::election::confirm_if_quorum (MDB_txn * transaction_a, bool should_update_winner) { auto tally_l (tally (transaction_a)); assert (tally_l.size () > 0); @@ -4968,7 +4968,7 @@ void rai::election::confirm_if_quorum (MDB_txn * transaction_a) { sum += i.first; } - if (sum >= node.config.online_weight_minimum.number () && !(*block_l == *status.winner)) + if (sum >= node.config.online_weight_minimum.number () && !(*block_l == *status.winner) && should_update_winner) { auto node_l (node.shared ()); node_l->block_processor.force (block_l); @@ -5276,7 +5276,7 @@ bool rai::active_transactions::start (std::pair, std if (existing == roots.end ()) { auto election (std::make_shared (node, primary_block, confirmation_action_a)); - election->should_update_winner = vote_stapled_block; // If we have a vote stapled block, keep winner for an election + election->should_update_winner = (bool)vote_stapled_block; // If we have a vote stapled block, keep winner for an election roots.insert (rai::conflict_info{ root, election, 0, blocks_a }); successors.insert (std::make_pair (primary_block->hash (), election)); } diff --git a/rai/node/node.hpp b/rai/node/node.hpp index b6c7bde687..664f897cf6 100644 --- a/rai/node/node.hpp +++ b/rai/node/node.hpp @@ -74,7 +74,7 @@ class election : public std::enable_shared_from_this // Change our winner to agree with the network void compute_rep_votes (MDB_txn *); // Confirm this block if quorum is met - void confirm_if_quorum (MDB_txn *); + void confirm_if_quorum (MDB_txn *, bool); void log_votes (rai::tally_t const &); bool publish (std::shared_ptr block_a); void abort ();