Improved the char counting in the check_master_pass function

This commit is contained in:
StNicolay 2023-06-27 22:51:34 +03:00
parent c3af7e9a95
commit 0a1d125b04
Signed by: StNicolay
GPG Key ID: 9693D04DCD962B0D

View File

@ -58,12 +58,11 @@ pub fn generate_passwords<const AMOUNT: usize, const LENGTH: usize>(
#[inline]
pub fn check_master_pass(password: &str) -> bool {
if password.chars().count() < 8 {
return false;
}
let mut count = 0;
let mut chars = password.chars();
let mut flags = PasswordFlags::empty();
for char in password.chars() {
for char in &mut chars {
count += 1;
if char.is_lowercase() {
flags |= PasswordFlags::LOWERCASE
} else if char.is_uppercase() {
@ -75,7 +74,8 @@ pub fn check_master_pass(password: &str) -> bool {
}
if flags.is_all() {
return true;
count += chars.count();
return count >= 8;
}
}
false