@@ -317,7 +317,11 @@ BOOST_FIXTURE_TEST_CASE(ListCoins, ListCoinsTestingSetup)
317317
318318 // Confirm ListCoins initially returns 1 coin grouped under coinbaseKey
319319 // address.
320- auto list = wallet->ListCoins ();
320+ std::map<CTxDestination, std::vector<COutput>> list;
321+ {
322+ LOCK2 (cs_main, wallet->cs_wallet );
323+ list = wallet->ListCoins ();
324+ }
321325 BOOST_CHECK_EQUAL (list.size (), 1U );
322326 BOOST_CHECK_EQUAL (boost::get<CKeyID>(list.begin ()->first ).ToString (), coinbaseAddress);
323327 BOOST_CHECK_EQUAL (list.begin ()->second .size (), 1U );
@@ -330,7 +334,10 @@ BOOST_FIXTURE_TEST_CASE(ListCoins, ListCoinsTestingSetup)
330334 // coinbaseKey pubkey, even though the change address has a different
331335 // pubkey.
332336 AddTx (CRecipient{GetScriptForRawPubKey ({}), 1 * COIN, false /* subtract fee */ });
333- list = wallet->ListCoins ();
337+ {
338+ LOCK2 (cs_main, wallet->cs_wallet );
339+ list = wallet->ListCoins ();
340+ }
334341 BOOST_CHECK_EQUAL (list.size (), 1U );
335342 BOOST_CHECK_EQUAL (boost::get<CKeyID>(list.begin ()->first ).ToString (), coinbaseAddress);
336343 BOOST_CHECK_EQUAL (list.begin ()->second .size (), 2U );
@@ -356,7 +363,10 @@ BOOST_FIXTURE_TEST_CASE(ListCoins, ListCoinsTestingSetup)
356363 }
357364 // Confirm ListCoins still returns same result as before, despite coins
358365 // being locked.
359- list = wallet->ListCoins ();
366+ {
367+ LOCK2 (cs_main, wallet->cs_wallet );
368+ list = wallet->ListCoins ();
369+ }
360370 BOOST_CHECK_EQUAL (list.size (), 1U );
361371 BOOST_CHECK_EQUAL (boost::get<CKeyID>(list.begin ()->first ).ToString (), coinbaseAddress);
362372 BOOST_CHECK_EQUAL (list.begin ()->second .size (), 2U );
0 commit comments