diff --git a/src/service/globals/resolver.rs b/src/service/globals/resolver.rs index 35910f5d..9d52cba2 100644 --- a/src/service/globals/resolver.rs +++ b/src/service/globals/resolver.rs @@ -88,14 +88,12 @@ impl Resolve for Resolver { impl Resolve for Hooked { fn resolve(&self, name: Name) -> Resolving { - self.overrides - .read() - .unwrap() - .get(name.as_str()) - .map_or_else( - || resolve_to_reqwest(self.resolver.clone(), name), - |(override_name, port)| cached_to_reqwest(override_name, *port), - ) + let addr_port = self.overrides.read().unwrap().get(name.as_str()).cloned(); + if let Some((addr, port)) = addr_port { + cached_to_reqwest(&addr, port) + } else { + resolve_to_reqwest(self.resolver.clone(), name) + } } }