@@ -1366,8 +1366,6 @@ where
13661366 tracing:: error!( peer_id = %peer_id, "Peer non-existent when handling graft" ) ;
13671367 return ;
13681368 } ;
1369- // Needs to be here to comply with the borrow checker.
1370- let is_outbound = connected_peer. outbound ;
13711369
13721370 // For each topic, if a peer has grafted us, then we necessarily must be in their mesh
13731371 // and they must be subscribed to the topic. Ensure we have recorded the mapping.
@@ -1455,10 +1453,9 @@ where
14551453 }
14561454
14571455 // check mesh upper bound and only allow graft if the upper bound is not reached
1458- // or if it is an outbound peer
14591456 let mesh_n_high = self . config . mesh_n_high_for_topic ( & topic_hash) ;
14601457
1461- if peers. len ( ) >= mesh_n_high && !is_outbound {
1458+ if peers. len ( ) >= mesh_n_high {
14621459 to_prune_topics. insert ( topic_hash. clone ( ) ) ;
14631460 continue ;
14641461 }
@@ -2228,7 +2225,9 @@ where
22282225 score_p1. partial_cmp ( & score_p2) . unwrap_or ( Ordering :: Equal )
22292226 } ) ;
22302227 // shuffle everything except the last retain_scores many peers (the best ones)
2231- shuffled[ ..peers. len ( ) - self . config . retain_scores ( ) ] . shuffle ( & mut rng) ;
2228+ if peers. len ( ) > self . config . retain_scores ( ) {
2229+ shuffled[ ..peers. len ( ) - self . config . retain_scores ( ) ] . shuffle ( & mut rng) ;
2230+ }
22322231
22332232 // count total number of outbound peers
22342233 let mut outbound = shuffled
0 commit comments