mirror of
https://github.com/monero-project/monero.git
synced 2024-10-01 11:49:47 -04:00
tx_pool: do not divide by 0
In case of a 0 tx weight, we use a placeholder value to insert in the fee-per-byte set. This is used for pruning and mining, and those txes are pruned, so will not be too large, nor added to the block template if mining, so this is safe. CID 204465
This commit is contained in:
parent
fe443bbdec
commit
1ba9bafd33
@ -259,7 +259,7 @@ namespace cryptonote
|
|||||||
m_blockchain.add_txpool_tx(id, blob, meta);
|
m_blockchain.add_txpool_tx(id, blob, meta);
|
||||||
if (!insert_key_images(tx, id, kept_by_block))
|
if (!insert_key_images(tx, id, kept_by_block))
|
||||||
return false;
|
return false;
|
||||||
m_txs_by_fee_and_receive_time.emplace(std::pair<double, std::time_t>(fee / (double)tx_weight, receive_time), id);
|
m_txs_by_fee_and_receive_time.emplace(std::pair<double, std::time_t>(fee / (double)(tx_weight ? tx_weight : 1), receive_time), id);
|
||||||
lock.commit();
|
lock.commit();
|
||||||
}
|
}
|
||||||
catch (const std::exception &e)
|
catch (const std::exception &e)
|
||||||
@ -305,7 +305,7 @@ namespace cryptonote
|
|||||||
m_blockchain.add_txpool_tx(id, blob, meta);
|
m_blockchain.add_txpool_tx(id, blob, meta);
|
||||||
if (!insert_key_images(tx, id, kept_by_block))
|
if (!insert_key_images(tx, id, kept_by_block))
|
||||||
return false;
|
return false;
|
||||||
m_txs_by_fee_and_receive_time.emplace(std::pair<double, std::time_t>(fee / (double)tx_weight, receive_time), id);
|
m_txs_by_fee_and_receive_time.emplace(std::pair<double, std::time_t>(fee / (double)(tx_weight ? tx_weight : 1), receive_time), id);
|
||||||
lock.commit();
|
lock.commit();
|
||||||
}
|
}
|
||||||
catch (const std::exception &e)
|
catch (const std::exception &e)
|
||||||
|
Loading…
Reference in New Issue
Block a user