Skip to content

Commit 5c7bde7

Browse files
committed
refactor: make clear what the new mode is used for.
1 parent 9315dbf commit 5c7bde7

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

gix-fs/src/capabilities.rs

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -73,14 +73,15 @@ impl Capabilities {
7373
.and_then(|file| {
7474
let old_mode = file.metadata()?.mode();
7575
let is_executable = old_mode & 0o100 == 0o100;
76-
Ok(is_executable && {
77-
let new_mode = old_mode ^ 0o100;
78-
match file.set_permissions(PermissionsExt::from_mode(new_mode)) {
79-
Ok(()) => new_mode == file.metadata()?.mode(),
76+
let filesystem_agrees = {
77+
let toggled_exe_bit = old_mode ^ 0o100;
78+
match file.set_permissions(PermissionsExt::from_mode(toggled_exe_bit)) {
79+
Ok(()) => toggled_exe_bit == file.metadata()?.mode(),
8080
Err(err) if err.kind() == std::io::ErrorKind::PermissionDenied => false,
8181
Err(err) => return Err(err),
8282
}
83-
})
83+
};
84+
Ok(is_executable && filesystem_agrees)
8485
});
8586
std::fs::remove_file(test_path)?;
8687
res

0 commit comments

Comments
 (0)