diff --git a/src/config/parser.rs b/src/config/parser.rs index d9c5c5e..e51f5ed 100644 --- a/src/config/parser.rs +++ b/src/config/parser.rs @@ -123,14 +123,12 @@ impl Config { _ => parsed_cet, }; - let proxy_str = globals.get::<_, String>("proxy")?; - let proxy = match Proxy::all(proxy_str) { - Ok(proxy) => Some(proxy), - Err(_) => { + let proxy_opt = globals.get::<_, Option>("proxy")?; + let proxy = proxy_opt.and_then(|proxy_str| { + Proxy::all(proxy_str).ok().and_then(|_| { log::error!("Invalid proxy url, defaulting to no proxy."); None - } - }; + }) Ok(Config { port: globals.get::<_, u16>("port")?,