diff --git a/czkawka_core/src/big_file.rs b/czkawka_core/src/big_file.rs index 6c9d23a..70440a6 100644 --- a/czkawka_core/src/big_file.rs +++ b/czkawka_core/src/big_file.rs @@ -148,7 +148,13 @@ impl BigFile { } let mut is_excluded_dir = false; - next_folder = "".to_owned() + ¤t_folder + &entry_data.file_name().into_string().unwrap() + "/"; + next_folder = "".to_owned() + + ¤t_folder + + match &entry_data.file_name().into_string() { + Ok(t) => t, + Err(_) => continue, + } + + "/"; for ed in &self.directories.excluded_directories { if next_folder == *ed { @@ -171,7 +177,11 @@ impl BigFile { } } else if metadata.is_file() { let mut have_valid_extension: bool; - let file_name_lowercase: String = entry_data.file_name().into_string().unwrap().to_lowercase(); + let file_name_lowercase: String = match entry_data.file_name().into_string() { + Ok(t) => t, + Err(_) => continue, + } + .to_lowercase(); // Checking allowed extensions if !self.allowed_extensions.file_extensions.is_empty() { @@ -188,7 +198,12 @@ impl BigFile { // Checking files if have_valid_extension { - let current_file_name = "".to_owned() + ¤t_folder + &entry_data.file_name().into_string().unwrap(); + let current_file_name = "".to_owned() + + ¤t_folder + + match &entry_data.file_name().into_string() { + Ok(t) => t, + Err(_) => continue, + }; // Checking expressions let mut found_expression: bool = false; diff --git a/czkawka_core/src/duplicate.rs b/czkawka_core/src/duplicate.rs index 93e1487..f984956 100644 --- a/czkawka_core/src/duplicate.rs +++ b/czkawka_core/src/duplicate.rs @@ -230,7 +230,13 @@ impl DuplicateFinder { } let mut is_excluded_dir = false; - next_folder = "".to_owned() + ¤t_folder + &entry_data.file_name().into_string().unwrap() + "/"; + next_folder = "".to_owned() + + ¤t_folder + + match &entry_data.file_name().into_string() { + Ok(t) => t, + Err(_) => continue, + } + + "/"; for ed in &self.directories.excluded_directories { if next_folder == *ed { @@ -253,7 +259,11 @@ impl DuplicateFinder { } } else if metadata.is_file() { let mut have_valid_extension: bool; - let file_name_lowercase: String = entry_data.file_name().into_string().unwrap().to_lowercase(); + let file_name_lowercase: String = match entry_data.file_name().into_string() { + Ok(t) => t, + Err(_) => continue, + } + .to_lowercase(); // Checking allowed extensions if !self.allowed_extensions.file_extensions.is_empty() { @@ -270,7 +280,12 @@ impl DuplicateFinder { // Checking files if metadata.len() >= self.minimal_file_size && have_valid_extension { - let current_file_name = "".to_owned() + ¤t_folder + &entry_data.file_name().into_string().unwrap(); + let current_file_name = "".to_owned() + + ¤t_folder + + match &entry_data.file_name().into_string() { + Ok(t) => t, + Err(_) => continue, + }; // Checking expressions let mut found_expression: bool = false; diff --git a/czkawka_core/src/empty_files.rs b/czkawka_core/src/empty_files.rs index 0504014..744c557 100644 --- a/czkawka_core/src/empty_files.rs +++ b/czkawka_core/src/empty_files.rs @@ -174,7 +174,13 @@ impl EmptyFiles { } let mut is_excluded_dir = false; - next_folder = "".to_owned() + ¤t_folder + &entry_data.file_name().into_string().unwrap() + "/"; + next_folder = "".to_owned() + + ¤t_folder + + match &entry_data.file_name().into_string() { + Ok(t) => t, + Err(_) => continue, + } + + "/"; for ed in &self.directories.excluded_directories { if next_folder == *ed { @@ -197,7 +203,11 @@ impl EmptyFiles { } } else if metadata.is_file() { let mut have_valid_extension: bool; - let file_name_lowercase: String = entry_data.file_name().into_string().unwrap().to_lowercase(); + let file_name_lowercase: String = match entry_data.file_name().into_string() { + Ok(t) => t, + Err(_) => continue, + } + .to_lowercase(); // Checking allowed extensions if !self.allowed_extensions.file_extensions.is_empty() { @@ -214,7 +224,12 @@ impl EmptyFiles { // Checking files if metadata.len() == 0 && have_valid_extension { - let current_file_name = "".to_owned() + ¤t_folder + &entry_data.file_name().into_string().unwrap(); + let current_file_name = "".to_owned() + + ¤t_folder + + match &entry_data.file_name().into_string() { + Ok(t) => t, + Err(_) => continue, + }; // Checking expressions let mut found_expression: bool = false; diff --git a/czkawka_core/src/empty_folder.rs b/czkawka_core/src/empty_folder.rs index 3e33695..120ffe9 100644 --- a/czkawka_core/src/empty_folder.rs +++ b/czkawka_core/src/empty_folder.rs @@ -173,7 +173,13 @@ impl EmptyFolder { }; // If child is dir, still folder may be considered as empty if all children are only directories. if metadata.is_dir() { - next_folder = "".to_owned() + ¤t_folder + &entry_data.file_name().into_string().unwrap() + "/"; + next_folder = "".to_owned() + + ¤t_folder + + match &entry_data.file_name().into_string() { + Ok(t) => t, + Err(_) => continue, + } + + "/"; folders_to_check.push(next_folder.clone()); folders_checked.insert( diff --git a/czkawka_core/src/temporary.rs b/czkawka_core/src/temporary.rs index 845a5c3..ccdbba4 100644 --- a/czkawka_core/src/temporary.rs +++ b/czkawka_core/src/temporary.rs @@ -166,7 +166,13 @@ impl Temporary { } let mut is_excluded_dir = false; - next_folder = "".to_owned() + ¤t_folder + &entry_data.file_name().into_string().unwrap() + "/"; + next_folder = "".to_owned() + + ¤t_folder + + match &entry_data.file_name().into_string() { + Ok(t) => t, + Err(_) => continue, + } + + "/"; for ed in &self.directories.excluded_directories { if next_folder == *ed { @@ -188,7 +194,11 @@ impl Temporary { folders_to_check.push(next_folder); } } else if metadata.is_file() { - let file_name_lowercase: String = entry_data.file_name().into_string().unwrap().to_lowercase(); + let file_name_lowercase: String = match entry_data.file_name().into_string() { + Ok(t) => t, + Err(_) => continue, + } + .to_lowercase(); let mut is_temporary_file: bool = false; // Temporary files which needs to have dot in name(not sure if exists without dot) @@ -204,7 +214,12 @@ impl Temporary { // Checking files if is_temporary_file { - let current_file_name = "".to_owned() + ¤t_folder + &entry_data.file_name().into_string().unwrap(); + let current_file_name = "".to_owned() + + ¤t_folder + + match &entry_data.file_name().into_string() { + Ok(t) => t, + Err(_) => continue, + }; // Checking expressions let mut found_expression: bool = false;