- // When calculating the lowest inbound fees to a node, we
- // calculate fees here not based on the actual value we think
- // will flow over this channel, but on the minimum value that
- // we'll accept flowing over it. The minimum accepted value
- // is a constant through each path collection run, ensuring
- // consistent basis. Otherwise we may later find a
- // different path to the source node that is more expensive,
- // but which we consider to be cheaper because we are capacity
- // constrained and the relative fee becomes lower.
- match compute_fees(minimal_value_contribution_msat, old_entry.src_lowest_inbound_fees)
- .map(|a| a.checked_add(total_fee_msat)) {
- Some(Some(v)) => {
- total_fee_msat = v;
- },
- _ => {
- total_fee_msat = u64::max_value();
- }
- };
- }
- }
+ compute_fees(minimal_value_contribution_msat, old_entry.src_lowest_inbound_fees)
+ })
+ // When calculating the lowest inbound fees to a node, we
+ // calculate fees here not based on the actual value we think
+ // will flow over this channel, but on the minimum value that
+ // we'll accept flowing over it. The minimum accepted value
+ // is a constant through each path collection run, ensuring
+ // consistent basis. Otherwise we may later find a
+ // different path to the source node that is more expensive,
+ // but which we consider to be cheaper because we are capacity
+ // constrained and the relative fee becomes lower.
+ .and_then(|a| a.checked_add(total_fee_msat))
+ // max_value means we'll always fail
+ // the old_entry.total_fee_msat > total_fee_msat check
+ .unwrap_or_else(|| u64::max_value());