fix: treat nfs4 mounts as soundless

Co-authored-by: sxyazi <17523360+sxyazi@users.noreply.github.com>
Agent-Logs-Url: https://github.com/sxyazi/yazi/sessions/ba27f406-31b3-4aef-8352-563444281d30
This commit is contained in:
copilot-swe-agent[bot] 2026-03-21 14:26:29 +00:00
parent 9bc53da9ea
commit 5455ed2076

View file

@ -25,7 +25,7 @@ impl Partition {
// and should be polled for changes.
pub fn soundless(&self) -> bool {
let b: &[u8] = self.fstype.as_ref().map_or(b"", |s| s.as_encoded_bytes());
matches!(b, b"fuse.rclone")
matches!(b, b"fuse.rclone" | b"nfs4")
}
#[rustfmt::skip]
@ -46,6 +46,26 @@ impl Partition {
}
}
#[cfg(test)]
mod tests {
use super::Partition;
#[test]
fn soundless_mount_types_include_nfs4() {
let partition =
Partition { fstype: Some("nfs4".into()), ..Default::default() };
assert!(partition.soundless());
let partition =
Partition { fstype: Some("fuse.rclone".into()), ..Default::default() };
assert!(partition.soundless());
let partition =
Partition { fstype: Some("ext4".into()), ..Default::default() };
assert!(!partition.soundless());
}
}
impl Partition {
#[cfg(any(target_os = "linux", target_os = "macos"))]
pub(super) fn new(name: &std::ffi::OsStr) -> Self {