Fix Windows

This commit is contained in:
sxyazi 2024-10-15 20:36:09 +08:00
parent 069ff689c8
commit 23cd9a087c
No known key found for this signature in database

View file

@ -141,20 +141,22 @@ impl Cha {
#[inline] #[inline]
pub fn new_nofollow(path: &Path, meta: Metadata) -> Self { pub fn new_nofollow(path: &Path, meta: Metadata) -> Self {
let mut cha = Self::from(meta); let mut attached = ChaKind::empty();
#[cfg(unix)] #[cfg(unix)]
if Urn::new(path).is_hidden() { if Urn::new(path).is_hidden() {
cha.kind |= ChaKind::HIDDEN; attached |= ChaKind::HIDDEN;
} }
#[cfg(windows)] #[cfg(windows)]
{ {
use std::os::windows::fs::MetadataExt; use std::os::windows::fs::MetadataExt;
if meta.file_attributes() & 2 != 0 { if meta.file_attributes() & 2 != 0 {
cha.kind |= ChaKind::HIDDEN; attached |= ChaKind::HIDDEN;
} }
} }
let mut cha = Self::from(meta);
cha.kind |= attached;
cha cha
} }