Merge pull request #3078 from cryptocode/wallet_republish-rpc-fix
This commit is contained in:
commit
f15adfebc4
1 changed files with 17 additions and 14 deletions
|
|
@ -219,22 +219,25 @@ void nano::network::flood_vote_pr (std::shared_ptr<nano::vote> const & vote_a)
|
||||||
|
|
||||||
void nano::network::flood_block_many (std::deque<std::shared_ptr<nano::block>> blocks_a, std::function<void()> callback_a, unsigned delay_a)
|
void nano::network::flood_block_many (std::deque<std::shared_ptr<nano::block>> blocks_a, std::function<void()> callback_a, unsigned delay_a)
|
||||||
{
|
{
|
||||||
auto block_l (blocks_a.front ());
|
|
||||||
blocks_a.pop_front ();
|
|
||||||
flood_block (block_l);
|
|
||||||
if (!blocks_a.empty ())
|
if (!blocks_a.empty ())
|
||||||
{
|
{
|
||||||
std::weak_ptr<nano::node> node_w (node.shared ());
|
auto block_l (blocks_a.front ());
|
||||||
node.alarm.add (std::chrono::steady_clock::now () + std::chrono::milliseconds (delay_a + std::rand () % delay_a), [node_w, blocks (std::move (blocks_a)), callback_a, delay_a]() {
|
blocks_a.pop_front ();
|
||||||
if (auto node_l = node_w.lock ())
|
flood_block (block_l);
|
||||||
{
|
if (!blocks_a.empty ())
|
||||||
node_l->network.flood_block_many (std::move (blocks), callback_a, delay_a);
|
{
|
||||||
}
|
std::weak_ptr<nano::node> node_w (node.shared ());
|
||||||
});
|
node.alarm.add (std::chrono::steady_clock::now () + std::chrono::milliseconds (delay_a + std::rand () % delay_a), [node_w, blocks (std::move (blocks_a)), callback_a, delay_a]() {
|
||||||
}
|
if (auto node_l = node_w.lock ())
|
||||||
else if (callback_a)
|
{
|
||||||
{
|
node_l->network.flood_block_many (std::move (blocks), callback_a, delay_a);
|
||||||
callback_a ();
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
else if (callback_a)
|
||||||
|
{
|
||||||
|
callback_a ();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue