# HG changeset patch # User alfadur # Date 1558555555 -10800 # Node ID a479916799eabb62ea74eba5ca9946a576f64055 # Parent dc4a12a84c92fada31ccd2d1fdaabe9878ab4e8f use contains where possible diff -r dc4a12a84c92 -r a479916799ea rust/hedgewars-server/src/server/handlers/inroom.rs --- a/rust/hedgewars-server/src/server/handlers/inroom.rs Wed May 22 22:42:20 2019 +0300 +++ b/rust/hedgewars-server/src/server/handlers/inroom.rs Wed May 22 23:05:55 2019 +0300 @@ -17,8 +17,7 @@ }; use base64::{decode, encode}; use log::*; -use std::iter::once; -use std::mem::swap; +use std::{cmp::min, iter::once, mem::swap}; #[derive(Clone)] struct ByMsg<'a> { @@ -166,7 +165,7 @@ MaxTeams(count) => { if !client.is_master() { response.add(Warning("You're not the room master!".to_string()).send_self()); - } else if count < 2 || count > MAX_TEAMS_IN_ROOM { + } else if !(2..=MAX_TEAMS_IN_ROOM).contains(&count) { response .add(Warning("/maxteams: specify number from 2 to 8".to_string()).send_self()); } else { @@ -291,12 +290,13 @@ SetHedgehogsNumber(team_name, number) => { let addable_hedgehogs = room.addable_hedgehogs(); if let Some((_, team)) = room.find_team_and_owner_mut(|t| t.name == team_name) { + let max_hedgehogs = min( + MAX_HEDGEHOGS_PER_TEAM, + addable_hedgehogs + team.hedgehogs_number, + ); if !client.is_master() { response.add(Error("You're not the room master!".to_string()).send_self()); - } else if number < 1 - || number > MAX_HEDGEHOGS_PER_TEAM - || number > addable_hedgehogs + team.hedgehogs_number - { + } else if !(1..=max_hedgehogs).contains(&number) { response .add(HedgehogsNumber(team.name.clone(), team.hedgehogs_number).send_self()); } else { diff -r dc4a12a84c92 -r a479916799ea rust/hedgewars-server/src/utils.rs --- a/rust/hedgewars-server/src/utils.rs Wed May 22 22:42:20 2019 +0300 +++ b/rust/hedgewars-server/src/utils.rs Wed May 22 23:05:55 2019 +0300 @@ -14,7 +14,7 @@ || name.trim() != name || name .chars() - .any(|c| "$()*+?[]^{|}\x7F".contains(c) || '\x00' <= c && c <= '\x1F') + .any(|c| "$()*+?[]^{|}\x7F".contains(c) || ('\x00'..='\x1F').contains(&c)) } pub fn to_engine_msg(msg: T) -> String