@@ -21,7 +21,7 @@ fn sort_by_timeout(proxy: &Proxy) -> tokio::time::Duration {
2121fn sort_naturally ( proxy : & Proxy ) -> ( ProxyType , Vec < u8 > , u16 ) {
2222 let host_key = proxy. host . parse :: < Ipv4Addr > ( ) . map_or_else (
2323 move |_| iter:: repeat_n ( u8:: MAX , 4 ) . chain ( proxy. host . bytes ( ) ) . collect ( ) ,
24- |ip| ip. octets ( ) . to_vec ( ) ,
24+ move |ip| ip. octets ( ) . to_vec ( ) ,
2525 ) ;
2626 ( proxy. protocol . clone ( ) , host_key, proxy. port )
2727}
@@ -60,7 +60,7 @@ pub async fn save_proxies(
6060 } ;
6161
6262 let mut sorted_proxies: Vec < _ > = storage. iter ( ) . collect ( ) ;
63- sorted_proxies. sort_by_key ( |p| sort_by_timeout ( p) ) ;
63+ sorted_proxies. sort_by_key ( move |p| sort_by_timeout ( p) ) ;
6464
6565 let mut proxy_dicts = Vec :: with_capacity ( sorted_proxies. len ( ) ) ;
6666
@@ -87,9 +87,9 @@ pub async fn save_proxies(
8787 password : proxy. password . clone ( ) ,
8888 host : proxy. host . clone ( ) ,
8989 port : proxy. port ,
90- timeout : proxy
91- . timeout
92- . map ( |d| ( d . as_secs_f64 ( ) * 100.0 ) . round ( ) / 100.0_f64 ) ,
90+ timeout : proxy. timeout . map ( move |d| {
91+ ( d . as_secs_f64 ( ) * 100.0 ) . round ( ) / 100.0_f64
92+ } ) ,
9393 exit_ip : proxy. exit_ip . clone ( ) ,
9494 geolocation,
9595 } ) ;
@@ -124,9 +124,9 @@ pub async fn save_proxies(
124124 if config. output_txt {
125125 let mut sorted_proxies: Vec < _ > = storage. iter ( ) . collect ( ) ;
126126 if config. sort_by_speed {
127- sorted_proxies. sort_by_key ( |p| sort_by_timeout ( p) ) ;
127+ sorted_proxies. sort_by_key ( move |p| sort_by_timeout ( p) ) ;
128128 } else {
129- sorted_proxies. sort_by_key ( |p| sort_naturally ( p) ) ;
129+ sorted_proxies. sort_by_key ( move |p| sort_naturally ( p) ) ;
130130 }
131131 let mut grouped_proxies = storage. get_grouped ( ) ;
132132
@@ -166,9 +166,9 @@ pub async fn save_proxies(
166166
167167 for ( proto, proxies) in & mut grouped_proxies {
168168 if config. sort_by_speed {
169- proxies. sort_by_key ( |p| sort_by_timeout ( p) ) ;
169+ proxies. sort_by_key ( move |p| sort_by_timeout ( p) ) ;
170170 } else {
171- proxies. sort_by_key ( |p| sort_naturally ( p) ) ;
171+ proxies. sort_by_key ( move |p| sort_naturally ( p) ) ;
172172 }
173173 let text =
174174 create_proxy_list_str ( proxies, anonymous_only, false ) ;
0 commit comments