Also regree
This commit is contained in:
parent
de408a144e
commit
6078c82a33
|
@ -23,7 +23,33 @@ impl Directories {
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn set_reference_directory(&mut self, reference_directory: Vec<PathBuf>) {
|
pub fn set_reference_directory(&mut self, reference_directory: Vec<PathBuf>) {
|
||||||
self.reference_directories = reference_directory;
|
self.reference_directories = reference_directory
|
||||||
|
.iter()
|
||||||
|
.map(|d| {
|
||||||
|
let mut directory = d.clone();
|
||||||
|
if directory.to_string_lossy().contains('*') {
|
||||||
|
return None;
|
||||||
|
}
|
||||||
|
|
||||||
|
if !directory.exists() {
|
||||||
|
return None;
|
||||||
|
}
|
||||||
|
if !directory.is_dir() {
|
||||||
|
return None;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Try to canonicalize them
|
||||||
|
if let Ok(dir) = directory.canonicalize() {
|
||||||
|
directory = dir;
|
||||||
|
}
|
||||||
|
if cfg!(windows) {
|
||||||
|
directory = PathBuf::from(directory.strip_prefix(r"\\?\").unwrap_or(&directory));
|
||||||
|
}
|
||||||
|
Some(directory)
|
||||||
|
})
|
||||||
|
.filter(|d| d.is_some())
|
||||||
|
.map(|d| d.unwrap())
|
||||||
|
.collect::<Vec<PathBuf>>();
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn set_included_directory(&mut self, included_directory: Vec<PathBuf>) -> Messages {
|
pub fn set_included_directory(&mut self, included_directory: Vec<PathBuf>) -> Messages {
|
||||||
|
|
Loading…
Reference in a new issue