mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-01-10 03:47:29 -03:00
Merge bitcoin/bitcoin#29462: [fuzz] Avoid partial negative result
9dae3b970a
[fuzz] Avoid partial negative result (Murch) Pull request description: May address the problem reported by maflcko in https://github.com/bitcoin/bitcoin/pull/27877#pullrequestreview-1890304914. For some values, `MAX_MONEY - max_spendable - max_output_groups` could result in a partial negative value. By putting the addition of `group_pos.size()` first, all partial results in this line will be strictly positive. I opened this as a draft, since I was unable to reproduce the issue, so I’m waiting for confirmation whether this in fact mitigates the problem. ACKs for top commit: maflcko: ACK9dae3b970a
sipa: utACK9dae3b970a
achow101: ACK9dae3b970a
brunoerg: crACK9dae3b970a
Tree-SHA512: 744b4706268d8dfd77538b99492ecf3cf77d229095f9bcd416a412131336830e2f134f2b2846c79abd3d193426f97c1f71eeaf68b16ab00e76318d57ee3673c7
This commit is contained in:
commit
1ac627c485
1 changed files with 1 additions and 1 deletions
|
@ -158,7 +158,7 @@ FUZZ_TARGET(coin_grinder_is_optimal)
|
|||
// Only make UTXOs with positive effective value
|
||||
const CAmount input_fee = coin_params.m_effective_feerate.GetFee(n_input_bytes);
|
||||
// Ensure that each UTXO has at least an effective value of 1 sat
|
||||
const CAmount eff_value{fuzzed_data_provider.ConsumeIntegralInRange<CAmount>(1, MAX_MONEY - max_spendable - max_output_groups + group_pos.size())};
|
||||
const CAmount eff_value{fuzzed_data_provider.ConsumeIntegralInRange<CAmount>(1, MAX_MONEY + group_pos.size() - max_spendable - max_output_groups)};
|
||||
const CAmount amount{eff_value + input_fee};
|
||||
std::vector<COutput> temp_utxo_pool;
|
||||
|
||||
|
|
Loading…
Reference in a new issue