From 24ae029901dc3268b3a8f80c6349b0c6ad73517d Mon Sep 17 00:00:00 2001 From: clemahieu Date: Sat, 6 Feb 2016 13:24:49 -0600 Subject: [PATCH] Fixing wallet.work test. Putting lock in proper location. --- rai/core_test/wallet.cpp | 2 +- rai/node/rpc.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/rai/core_test/wallet.cpp b/rai/core_test/wallet.cpp index ef795519..7a59d964 100644 --- a/rai/core_test/wallet.cpp +++ b/rai/core_test/wallet.cpp @@ -592,7 +592,7 @@ TEST (wallet, work) ASSERT_FALSE (system.work.work_validate (root1, work4)); uint64_t work3 (0); auto iteration (0); - while (work3 != work4) + while (system.work.work_validate (root1, work3)) { system.poll (); rai::transaction transaction (system.nodes [0]->store.environment, nullptr, false); diff --git a/rai/node/rpc.cpp b/rai/node/rpc.cpp index 6a6a76b5..590b31d7 100644 --- a/rai/node/rpc.cpp +++ b/rai/node/rpc.cpp @@ -1452,7 +1452,6 @@ void rai::payment_observer::start (uint64_t timeout) auto this_l (shared_from_this ()); rpc.node.service.add (std::chrono::system_clock::now () + std::chrono::milliseconds (timeout), [this_l] () { - std::lock_guard lock (this_l->rpc.mutex); this_l->complete (rai::payment_status::nothing); }); } @@ -1496,6 +1495,7 @@ void rai::payment_observer::complete (rai::payment_status status) break; } } + std::lock_guard lock (rpc.mutex); assert (rpc.payment_observers.find (account) != rpc.payment_observers.end ()); rpc.payment_observers.erase (account); }