From e74b4b35b9979162a01208f39bb5168b3c03389e Mon Sep 17 00:00:00 2001 From: John Paul Date: Sun, 26 Jun 2022 00:50:41 -0400 Subject: [PATCH] Don't consider a user's name taken by self (#376) * Don't consider a user's name taken if self * Fix incorrect types * try-use more idiomatic Option tech * true if `None` Co-authored-by: Geometrically <18202329+Geometrically@users.noreply.github.com> --- src/routes/users.rs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/routes/users.rs b/src/routes/users.rs index b16ec1733..f05722d2c 100644 --- a/src/routes/users.rs +++ b/src/routes/users.rs @@ -182,13 +182,17 @@ pub async fn user_edit( let mut transaction = pool.begin().await?; if let Some(username) = &new_user.username { - let user_option = + let existing_user_id_option = crate::database::models::User::get_id_from_username_or_id( username, &**pool, ) .await?; - if user_option.is_none() { + if existing_user_id_option + .map(UserId::from) + .map(|id| id == user.id) + .unwrap_or(true) + { sqlx::query!( " UPDATE users