From 3e35bfad7e38fa60201afc0160f3f4b27976c9bb Mon Sep 17 00:00:00 2001 From: jpk68 Date: Mon, 24 Aug 2026 11:39:57 -0400 Subject: [PATCH] src: reduce unnecessary copies/allocations --- src/cryptonote_core/blockchain.cpp | 3 ++- src/rpc/core_rpc_server.cpp | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/cryptonote_core/blockchain.cpp b/src/cryptonote_core/blockchain.cpp index f2cce542d..9c7518edb 100644 --- a/src/cryptonote_core/blockchain.cpp +++ b/src/cryptonote_core/blockchain.cpp @@ -3736,6 +3736,7 @@ bool Blockchain::check_tx_input(size_t tx_version, const txin_to_key& txin, cons }; output_keys.clear(); + output_keys.reserve(txin.key_offsets.size()); // collect output keys outputs_visitor vi(output_keys, *this, hf_version); @@ -4291,7 +4292,7 @@ leave: { uint64_t long_term_block_weight = get_next_long_term_block_weight(block_weight); cryptonote::blobdata bd = cryptonote::block_to_blob(bl); - new_height = m_db->add_block(std::make_pair(std::move(bl), std::move(bd)), block_weight, long_term_block_weight, cumulative_difficulty, already_generated_coins, txs); + new_height = m_db->add_block(std::make_pair(bl, std::move(bd)), block_weight, long_term_block_weight, cumulative_difficulty, already_generated_coins, txs); } catch (const KEY_IMAGE_EXISTS& e) { diff --git a/src/rpc/core_rpc_server.cpp b/src/rpc/core_rpc_server.cpp index 104be85bd..236d869ed 100644 --- a/src/rpc/core_rpc_server.cpp +++ b/src/rpc/core_rpc_server.cpp @@ -1777,9 +1777,10 @@ namespace cryptonote const uint32_t max_nonce = restricted ? 16384 : 65535; bool collision = true; std::vector slots(aux_pow.size()); + std::vector slot_seen(aux_pow.size(), false); for (nonce = 0; nonce <= max_nonce; ++nonce) { - std::vector slot_seen(aux_pow.size(), false); + slot_seen.assign(aux_pow.size(), false); collision = false; for (size_t idx = 0; idx < aux_pow.size(); ++idx) slots[idx] = 0xffffffff;