From 4b8d43c5576a5f59d3fdda9b1cfa7143c57840ef Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sun, 2 Feb 2025 13:32:00 +0000 Subject: [PATCH] service.c: Better handling of clones Use the same variable name throughout, and clone things in a surrounding block. Signed-off-by: Ian Jackson --- server/server.rs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/server/server.rs b/server/server.rs index 8699fda..0ff718b 100644 --- a/server/server.rs +++ b/server/server.rs @@ -252,15 +252,15 @@ async fn async_main(opts: Opts, daemon: Option) { } for saddr in &global.config.addrs { - let global_ = global.clone(); - let make_service = hyper::service::make_service_fn( + let make_service = hyper::service::make_service_fn({ + let global = global.clone(); move |conn: &hyper::server::conn::AddrStream| { - let global_ = global_.clone(); + let global = global.clone(); let caddr = Arc::new(format!("[{}]", conn.remote_addr())); let service = hyper::service::service_fn(move |req| { AssertUnwindSafe( - sweb::handle(caddr.clone(), global_.clone(), req) + sweb::handle(caddr.clone(), global.clone(), req) ) .catch_unwind() .map(|r| r.unwrap_or_else(|_|{ @@ -269,7 +269,7 @@ async fn async_main(opts: Opts, daemon: Option) { }); async { Ok::<_, Void>(service) } } - ); + }); let saddr = SocketAddr::new(*saddr, global.config.port); let server = hyper::Server::try_bind(&saddr) -- 2.30.2