diff --git a/src/api/client/context.rs b/src/api/client/context.rs index 4a7d34d2..2550e38a 100644 --- a/src/api/client/context.rs +++ b/src/api/client/context.rs @@ -130,7 +130,7 @@ pub(crate) async fn get_context_route( let state_at = events_after .last() .map(ref_at!(1)) - .map_or(body.event_id.as_ref(), |pdu| pdu.event_id.as_ref()); + .map_or_else(|| body.event_id.as_ref(), |pdu| pdu.event_id.as_ref()); let state_ids = services .rooms diff --git a/src/core/info/version.rs b/src/core/info/version.rs index c22c8ec8..40910820 100644 --- a/src/core/info/version.rs +++ b/src/core/info/version.rs @@ -27,5 +27,5 @@ fn init_user_agent() -> String { format!("{}/{}", name(), version()) } fn init_version() -> String { conduwuit_build_metadata::version_tag() - .map_or(SEMANTIC.to_owned(), |extra| format!("{SEMANTIC} ({extra})")) + .map_or_else(|| SEMANTIC.to_owned(), |extra| format!("{SEMANTIC} ({extra})")) } diff --git a/src/core/matrix/state_res/event_auth.rs b/src/core/matrix/state_res/event_auth.rs index 77a4a95c..dc644fd7 100644 --- a/src/core/matrix/state_res/event_auth.rs +++ b/src/core/matrix/state_res/event_auth.rs @@ -585,10 +585,11 @@ where (target_membership == MembershipState::Join).then_some(&power_levels.users_default) }); - let mut join_rules = JoinRule::Invite; - if let Some(jr) = &join_rules_event { - join_rules = from_json_str::(jr.content().get())?.join_rule; - } + let join_rules = if let Some(jr) = &join_rules_event { + from_json_str::(jr.content().get())?.join_rule + } else { + JoinRule::Invite + }; let power_levels_event_id = power_levels_event.as_ref().map(Event::event_id); let sender_membership_event_id = sender_membership_event.as_ref().map(Event::event_id); diff --git a/src/core/utils/bool.rs b/src/core/utils/bool.rs index b16f63e9..ef35d974 100644 --- a/src/core/utils/bool.rs +++ b/src/core/utils/bool.rs @@ -65,7 +65,7 @@ impl BoolExt for bool { fn into_option(self) -> Option<()> { self.then_some(()) } #[inline] - fn into_result(self) -> Result<(), ()> { self.ok_or(()) } + fn into_result(self) -> Result<(), ()> { BoolExt::ok_or(self, ()) } #[inline] fn map T>(self, f: F) -> T @@ -77,7 +77,7 @@ impl BoolExt for bool { #[inline] fn map_ok_or T>(self, err: E, f: F) -> Result { - self.ok_or(err).map(|()| f()) + BoolExt::ok_or(self, err).map(|()| f()) } #[inline] diff --git a/src/service/globals/mod.rs b/src/service/globals/mod.rs index 12f2ec78..de8b12d7 100644 --- a/src/service/globals/mod.rs +++ b/src/service/globals/mod.rs @@ -29,20 +29,19 @@ impl crate::Service for Service { let db = Data::new(&args); let config = &args.server.config; - let turn_secret = - config - .turn_secret_file - .as_ref() - .map_or(config.turn_secret.clone(), |path| { - std::fs::read_to_string(path).unwrap_or_else(|e| { - error!("Failed to read the TURN secret file: {e}"); + let turn_secret = config.turn_secret_file.as_ref().map_or_else( + || config.turn_secret.clone(), + |path| { + std::fs::read_to_string(path).unwrap_or_else(|e| { + error!("Failed to read the TURN secret file: {e}"); - config.turn_secret.clone() - }) - }); + config.turn_secret.clone() + }) + }, + ); - let registration_token = config.registration_token_file.as_ref().map_or( - config.registration_token.clone(), + let registration_token = config.registration_token_file.as_ref().map_or_else( + || config.registration_token.clone(), |path| { let Ok(token) = std::fs::read_to_string(path).inspect_err(|e| { error!("Failed to read the registration token file: {e}"); diff --git a/src/service/pusher/mod.rs b/src/service/pusher/mod.rs index 071bf822..e6bcdc23 100644 --- a/src/service/pusher/mod.rs +++ b/src/service/pusher/mod.rs @@ -439,13 +439,7 @@ impl Service { notifi.counts = NotificationCounts::default(); } - if event_id_only { - self.send_request( - &http.url, - send_event_notification::v1::Request::new(notifi), - ) - .await?; - } else { + if !event_id_only { if *event.kind() == TimelineEventType::RoomEncrypted || tweaks .iter() @@ -480,14 +474,11 @@ impl Service { .get_canonical_alias(event.room_id()) .await .ok(); - - self.send_request( - &http.url, - send_event_notification::v1::Request::new(notifi), - ) - .await?; } + self.send_request(&http.url, send_event_notification::v1::Request::new(notifi)) + .await?; + Ok(()) }, // TODO: Handle email