@@ -332,11 +332,9 @@ struct RouteGraphNode {
332
332
impl cmp:: Ord for RouteGraphNode {
333
333
fn cmp ( & self , other : & RouteGraphNode ) -> cmp:: Ordering {
334
334
let other_score = cmp:: max ( other. lowest_fee_to_peer_through_node , other. path_htlc_minimum_msat )
335
- . checked_add ( other. path_penalty_msat )
336
- . unwrap_or_else ( || u64:: max_value ( ) ) ;
335
+ . saturating_add ( other. path_penalty_msat ) ;
337
336
let self_score = cmp:: max ( self . lowest_fee_to_peer_through_node , self . path_htlc_minimum_msat )
338
- . checked_add ( self . path_penalty_msat )
339
- . unwrap_or_else ( || u64:: max_value ( ) ) ;
337
+ . saturating_add ( self . path_penalty_msat ) ;
340
338
other_score. cmp ( & self_score) . then_with ( || other. node_id . cmp ( & self . node_id ) )
341
339
}
342
340
}
@@ -880,8 +878,7 @@ where L::Target: Logger {
880
878
. checked_sub( 2 * MEDIAN_HOP_CLTV_EXPIRY_DELTA )
881
879
. unwrap_or( payment_params. max_total_cltv_expiry_delta - final_cltv_expiry_delta) ;
882
880
let hop_total_cltv_delta = ( $next_hops_cltv_delta as u32 )
883
- . checked_add( $candidate. cltv_expiry_delta( ) )
884
- . unwrap_or( u32 :: max_value( ) ) ;
881
+ . saturating_add( $candidate. cltv_expiry_delta( ) ) ;
885
882
let doesnt_exceed_cltv_delta_limit = hop_total_cltv_delta <= max_total_cltv_expiry_delta;
886
883
887
884
let value_contribution_msat = cmp:: min( available_value_contribution_msat, $next_hops_value_contribution) ;
@@ -988,9 +985,9 @@ where L::Target: Logger {
988
985
}
989
986
}
990
987
991
- let path_penalty_msat = $next_hops_path_penalty_msat. checked_add (
992
- scorer. channel_penalty_msat( short_channel_id, amount_to_transfer_over_msat, * available_liquidity_msat ,
993
- & $src_node_id, & $dest_node_id) ) . unwrap_or_else ( || u64 :: max_value ( ) ) ;
988
+ let path_penalty_msat = $next_hops_path_penalty_msat. saturating_add (
989
+ scorer. channel_penalty_msat( short_channel_id, amount_to_transfer_over_msat,
990
+ * available_liquidity_msat , & $src_node_id, & $dest_node_id) ) ;
994
991
let new_graph_node = RouteGraphNode {
995
992
node_id: $src_node_id,
996
993
lowest_fee_to_peer_through_node: total_fee_msat,
@@ -1018,11 +1015,9 @@ where L::Target: Logger {
1018
1015
// the fees included in $next_hops_path_htlc_minimum_msat, but also
1019
1016
// can't use something that may decrease on future hops.
1020
1017
let old_cost = cmp:: max( old_entry. total_fee_msat, old_entry. path_htlc_minimum_msat)
1021
- . checked_add( old_entry. path_penalty_msat)
1022
- . unwrap_or_else( || u64 :: max_value( ) ) ;
1018
+ . saturating_add( old_entry. path_penalty_msat) ;
1023
1019
let new_cost = cmp:: max( total_fee_msat, path_htlc_minimum_msat)
1024
- . checked_add( path_penalty_msat)
1025
- . unwrap_or_else( || u64 :: max_value( ) ) ;
1020
+ . saturating_add( path_penalty_msat) ;
1026
1021
1027
1022
if !old_entry. was_processed && new_cost < old_cost {
1028
1023
targets. push( new_graph_node) ;
@@ -1206,12 +1201,10 @@ where L::Target: Logger {
1206
1201
. unwrap_or_else ( || CandidateRouteHop :: PrivateHop { hint : hop } ) ;
1207
1202
let capacity_msat = candidate. effective_capacity ( ) . as_msat ( ) ;
1208
1203
aggregate_next_hops_path_penalty_msat = aggregate_next_hops_path_penalty_msat
1209
- . checked_add ( scorer. channel_penalty_msat ( hop. short_channel_id , final_value_msat, capacity_msat, & source, & target) )
1210
- . unwrap_or_else ( || u64:: max_value ( ) ) ;
1204
+ . saturating_add ( scorer. channel_penalty_msat ( hop. short_channel_id , final_value_msat, capacity_msat, & source, & target) ) ;
1211
1205
1212
1206
aggregate_next_hops_cltv_delta = aggregate_next_hops_cltv_delta
1213
- . checked_add ( hop. cltv_expiry_delta as u32 )
1214
- . unwrap_or_else ( || u32:: max_value ( ) ) ;
1207
+ . saturating_add ( hop. cltv_expiry_delta as u32 ) ;
1215
1208
1216
1209
if !add_entry ! ( candidate, source, target, aggregate_next_hops_fee_msat, path_value_msat, aggregate_next_hops_path_htlc_minimum_msat, aggregate_next_hops_path_penalty_msat, aggregate_next_hops_cltv_delta) {
1217
1210
// If this hop was not used then there is no use checking the preceding hops
0 commit comments