summaryrefslogtreecommitdiff
path: root/src/utils/globber.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/utils/globber.rs')
-rw-r--r--src/utils/globber.rs18
1 files changed, 7 insertions, 11 deletions
diff --git a/src/utils/globber.rs b/src/utils/globber.rs
index 0c3f471..dbb77ea 100644
--- a/src/utils/globber.rs
+++ b/src/utils/globber.rs
@@ -246,27 +246,23 @@ pub mod constants {
}
#[cfg(windows)]
{
- let current_drive = current_dir()
- .unwrap_or_default()
+ let current_drive = current_dir
.components()
.find_map(|comp| {
- if let std::path::Component::Prefix(prefix) = comp {
- Some(prefix)
+ if let std::path::Component::Prefix(prefix_component) = comp {
+ Some(prefix_component)
} else {
None
}
})
- .and_then(|prefix| {
- if let std::path::Prefix::Disk(drive_letter)
- | std::path::Prefix::VerbatimDisk(drive_letter) = prefix
- {
+ .and_then(|prefix_component| match prefix_component.kind() {
+ std::path::Prefix::Disk(drive_letter)
+ | std::path::Prefix::VerbatimDisk(drive_letter) => {
Some((drive_letter as char).to_string())
- } else {
- None
}
+ _ => None,
})
.unwrap_or_else(|| "C".to_string());
-
(
PathBuf::from(format!("{}:{}", current_drive, ROOT_DIR_PREFIX)),
remaining.to_string(),