@ -994,7 +994,7 @@ uint64_t gamma_picker::pick()
const uint64_t n_rct = rct_offsets [ index ] - first_rct ;
if ( n_rct = = 0 )
return std : : numeric_limits < uint64_t > : : max ( ) ; // bad pick
M DEBUG ( " Picking 1/ " < < n_rct < < " in block " < < index ) ;
M TRACE ( " Picking 1/ " < < n_rct < < " in block " < < index ) ;
return first_rct + crypto : : rand_idx ( n_rct ) ;
} ;
@ -7752,7 +7752,7 @@ void wallet2::get_outs(std::vector<std::vector<tools::wallet2::get_outs_entry>>
}
}
if ( num_outs < = requested_outputs_count & & ! existing_ring_found )
if ( num_outs < = requested_outputs_count )
{
for ( uint64_t i = 0 ; i < num_outs ; i + + )
req . outputs . push_back ( { amount , i } ) ;
@ -7778,6 +7778,8 @@ void wallet2::get_outs(std::vector<std::vector<tools::wallet2::get_outs_entry>>
// while we still need more mixins
uint64_t num_usable_outs = num_outs ;
bool allow_blackballed = false ;
MDEBUG ( " Starting gamma picking with " < < num_outs < < " , num_usable_outs " < < num_usable_outs
< < " , requested_outputs_count " < < requested_outputs_count ) ;
while ( num_found < requested_outputs_count )
{
// if we've gone through every possible output, we've gotten all we can
@ -7877,6 +7879,7 @@ void wallet2::get_outs(std::vector<std::vector<tools::wallet2::get_outs_entry>>
picks [ type ] . insert ( i ) ;
req . outputs . push_back ( { amount , i } ) ;
+ + num_found ;
MDEBUG ( " picked " < < i < < " , " < < num_found < < " now picked " ) ;
}
for ( const auto & pick : picks )