@ -2120,6 +2120,8 @@ namespace cryptonote
try
{
// 0 is placeholder for the whole chain
const uint64_t req_to_height = req . to_height ? req . to_height : ( m_core . get_current_blockchain_height ( ) - 1 ) ;
for ( uint64_t amount : req . amounts )
{
static struct D
@ -2132,7 +2134,7 @@ namespace cryptonote
} d ;
boost : : unique_lock < boost : : mutex > lock ( d . mutex ) ;
if ( d . cached & & amount = = 0 & & d . cached_from = = req . from_height & & d . cached_to = = req . to_height)
if ( d . cached & & amount = = 0 & & d . cached_from = = req . from_height & & d . cached_to = = req _ to_height)
{
res . distributions . push_back ( { amount , d . cached_start_height , req . binary , d . cached_distribution , d . cached_base } ) ;
if ( ! req . cumulative )
@ -2147,23 +2149,23 @@ namespace cryptonote
std : : vector < uint64_t > distribution ;
uint64_t start_height , base ;
if ( ! m_core . get_output_distribution ( amount , req . from_height , req . to_height, start_height , distribution , base ) )
if ( ! m_core . get_output_distribution ( amount , req . from_height , req _ to_height, start_height , distribution , base ) )
{
error_resp . code = CORE_RPC_ERROR_CODE_INTERNAL_ERROR ;
error_resp . message = " Failed to get rct distribution " ;
return false ;
}
if ( req . to_height > 0 & & req . to_height > = req . from_height )
if ( req _to_height > 0 & & req_ to_height > = req . from_height )
{
uint64_t offset = std : : max ( req . from_height , start_height ) ;
if ( offset < = req . to_height & & req . to_height - offset + 1 < distribution . size ( ) )
distribution . resize ( req . to_height - offset + 1 ) ;
if ( offset < = req _to_height & & req_ to_height - offset + 1 < distribution . size ( ) )
distribution . resize ( req _ to_height - offset + 1 ) ;
}
if ( amount = = 0 )
{
d . cached_from = req . from_height ;
d . cached_to = req . to_height;
d . cached_to = req _ to_height;
d . cached_distribution = distribution ;
d . cached_start_height = start_height ;
d . cached_base = base ;