From a8138be69b0c051da9f97827a9f5427c98dd3051 Mon Sep 17 00:00:00 2001 From: Jake Howard Date: Sat, 27 Mar 2021 14:03:31 +0000 Subject: [PATCH] Use `if let` more --- src/api/core/accounts.rs | 6 ++---- src/api/icons.rs | 12 +++++++----- src/api/notifications.rs | 14 ++++++++------ 3 files changed, 17 insertions(+), 15 deletions(-) diff --git a/src/api/core/accounts.rs b/src/api/core/accounts.rs index 9131575a..2d747fee 100644 --- a/src/api/core/accounts.rs +++ b/src/api/core/accounts.rs @@ -139,10 +139,8 @@ fn register(data: JsonUpcase, conn: DbConn) -> EmptyResult { } user.last_verifying_at = Some(user.created_at); - } else { - if let Err(e) = mail::send_welcome(&user.email) { - error!("Error sending welcome email: {:#?}", e); - } + } else if let Err(e) = mail::send_welcome(&user.email) { + error!("Error sending welcome email: {:#?}", e); } } diff --git a/src/api/icons.rs b/src/api/icons.rs index 5abcf375..f2ef9f21 100644 --- a/src/api/icons.rs +++ b/src/api/icons.rs @@ -352,10 +352,12 @@ fn get_favicons_node(node: &std::rc::Rc, icons: &mut Ve } } - if has_rel && href.is_some() { - if let Ok(full_href) = url.join(&href.unwrap()).map(|h| h.into_string()) { - let priority = get_icon_priority(&full_href, sizes); - icons.push(Icon::new(priority, full_href)); + if has_rel { + if let Some(inner_href) = href { + if let Ok(full_href) = url.join(&inner_href).map(|h| h.into_string()) { + let priority = get_icon_priority(&full_href, sizes); + icons.push(Icon::new(priority, full_href)); + } } } } @@ -472,7 +474,7 @@ fn get_icon_url(domain: &str) -> Result { let dom = html5ever::parse_document(markup5ever_rcdom::RcDom::default(), Default::default()) .from_utf8() .read_from(&mut limited_reader)?; - + get_favicons_node(&dom.document, &mut iconlist, &url); } else { // Add the default favicon.ico to the list with just the given domain diff --git a/src/api/notifications.rs b/src/api/notifications.rs index 3a6423c1..3c61b053 100644 --- a/src/api/notifications.rs +++ b/src/api/notifications.rs @@ -166,8 +166,8 @@ impl WSHandler { if let Some(params) = path.split('?').nth(1) { let params_iter = params.split('&').take(1); for val in params_iter { - if val.starts_with(ACCESS_TOKEN_KEY) { - return Some(val[ACCESS_TOKEN_KEY.len()..].into()); + if let Some(stripped) = val.strip_prefix(ACCESS_TOKEN_KEY) { + return Some(stripped.into()); } } }; @@ -410,10 +410,12 @@ pub fn start_notification_server() -> WebSocketUsers { if CONFIG.websocket_enabled() { thread::spawn(move || { - let mut settings = ws::Settings::default(); - settings.max_connections = 500; - settings.queue_size = 2; - settings.panic_on_internal = false; + let settings = ws::Settings { + max_connections: 500, + queue_size: 2, + panic_on_internal: false, + ..Default::default() + }; ws::Builder::new() .with_settings(settings)