diff --git a/yazi-shared/src/cha.rs b/yazi-shared/src/cha.rs index ddfd6923..e2170598 100644 --- a/yazi-shared/src/cha.rs +++ b/yazi-shared/src/cha.rs @@ -26,7 +26,7 @@ pub struct Cha { pub created: Option, pub modified: Option, #[cfg(unix)] - pub permissions: u16, + pub permissions: u32, } impl From for Cha { @@ -63,7 +63,7 @@ impl From for Cha { #[cfg(unix)] permissions: { use std::os::unix::prelude::PermissionsExt; - m.permissions().mode() as u16 + m.permissions().mode() }, } } diff --git a/yazi-shared/src/fs.rs b/yazi-shared/src/fs.rs index a8dc4a2d..4c4a8890 100644 --- a/yazi-shared/src/fs.rs +++ b/yazi-shared/src/fs.rs @@ -94,12 +94,12 @@ pub fn copy_with_progress(from: &Path, to: &Path) -> mpsc::Receiver Option { None } +pub fn permissions(_: u32) -> Option { None } // Convert a file mode to a string representation #[cfg(unix)] #[allow(clippy::collapsible_else_if)] -pub fn permissions(mode: u16) -> Option { +pub fn permissions(mode: u32) -> Option { use libc::{mode_t, S_IFBLK, S_IFCHR, S_IFDIR, S_IFIFO, S_IFLNK, S_IFMT, S_IFSOCK, S_IRGRP, S_IROTH, S_IRUSR, S_ISGID, S_ISUID, S_ISVTX, S_IWGRP, S_IWOTH, S_IWUSR, S_IXGRP, S_IXOTH, S_IXUSR}; let mut s = String::with_capacity(10);