Don't crash when found file name which is not valid Unicode
This commit is contained in:
parent
78aa7d531a
commit
3b63798751
|
@ -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;
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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(
|
||||
|
|
|
@ -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;
|
||||
|
|
Loading…
Reference in a new issue