From ab6cd4229b19542a2941e5aa2c3de107902ee952 Mon Sep 17 00:00:00 2001 From: Wolfgang Bumiller Date: Tue, 9 Feb 2021 13:08:18 +0100 Subject: [PATCH] pxar: skip write_attr_fd if they are equal Signed-off-by: Wolfgang Bumiller --- src/pxar/metadata.rs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/pxar/metadata.rs b/src/pxar/metadata.rs index 8d24d85f..6e87db3d 100644 --- a/src/pxar/metadata.rs +++ b/src/pxar/metadata.rs @@ -363,6 +363,11 @@ fn apply_chattr(fd: RawFd, chattr: libc::c_long, mask: libc::c_long) -> Result<( } let attr = (chattr & mask) | (fattr & !mask); + + if attr == fattr { + return Ok(()); + } + match unsafe { fs::write_attr_fd(fd, &attr) } { Ok(_) => Ok(()), Err(nix::Error::Sys(errno)) if errno_is_unsupported(errno) => Ok(()),