Fix loop bug when calling core::get_block_template, causing calling thread to lock up.
This commit is contained in:
parent
9dc25497a2
commit
5d304cabfd
1 changed files with 9 additions and 0 deletions
|
@ -503,7 +503,10 @@ namespace cryptonote
|
||||||
|
|
||||||
// Can not exceed maximum block size
|
// Can not exceed maximum block size
|
||||||
if (max_total_size < total_size + tx_it->second.blob_size)
|
if (max_total_size < total_size + tx_it->second.blob_size)
|
||||||
|
{
|
||||||
|
sorted_it++;
|
||||||
continue;
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
// If adding this tx will make the block size
|
// If adding this tx will make the block size
|
||||||
// greater than CRYPTONOTE_GETBLOCKTEMPLATE_MAX
|
// greater than CRYPTONOTE_GETBLOCKTEMPLATE_MAX
|
||||||
|
@ -511,7 +514,10 @@ namespace cryptonote
|
||||||
// keep block sizes from becoming too unwieldly
|
// keep block sizes from becoming too unwieldly
|
||||||
// to propagate at 60s block times.
|
// to propagate at 60s block times.
|
||||||
if ( (total_size + tx_it->second.blob_size) > CRYPTONOTE_GETBLOCKTEMPLATE_MAX_BLOCK_SIZE )
|
if ( (total_size + tx_it->second.blob_size) > CRYPTONOTE_GETBLOCKTEMPLATE_MAX_BLOCK_SIZE )
|
||||||
|
{
|
||||||
|
sorted_it++;
|
||||||
continue;
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
// If we've exceeded the penalty free size,
|
// If we've exceeded the penalty free size,
|
||||||
// stop including more tx
|
// stop including more tx
|
||||||
|
@ -522,7 +528,10 @@ namespace cryptonote
|
||||||
// included into the blockchain or that are
|
// included into the blockchain or that are
|
||||||
// missing key images
|
// missing key images
|
||||||
if (!is_transaction_ready_to_go(tx_it->second) || have_key_images(k_images, tx_it->second.tx))
|
if (!is_transaction_ready_to_go(tx_it->second) || have_key_images(k_images, tx_it->second.tx))
|
||||||
|
{
|
||||||
|
sorted_it++;
|
||||||
continue;
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
bl.tx_hashes.push_back(tx_it->first);
|
bl.tx_hashes.push_back(tx_it->first);
|
||||||
total_size += tx_it->second.blob_size;
|
total_size += tx_it->second.blob_size;
|
||||||
|
|
Loading…
Reference in a new issue