mirror of
https://github.com/RGBCube/uutils-coreutils
synced 2025-08-01 05:27:45 +00:00
test: handle symlinks in main match
This commit is contained in:
parent
301b9002ce
commit
187006f0d3
1 changed files with 7 additions and 10 deletions
|
@ -374,16 +374,13 @@ fn path(path: &[u8], cond: PathCondition) -> bool {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
if cond == PathCondition::SymLink {
|
let metadata = if cond == PathCondition::SymLink {
|
||||||
if let Ok(metadata) = fs::symlink_metadata(path) {
|
fs::symlink_metadata(path)
|
||||||
if metadata.file_type().is_symlink() {
|
} else {
|
||||||
return true;
|
fs::metadata(path)
|
||||||
}
|
};
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
let metadata = match fs::metadata(path) {
|
let metadata = match metadata {
|
||||||
Ok(metadata) => metadata,
|
Ok(metadata) => metadata,
|
||||||
Err(_) => { return false; }
|
Err(_) => { return false; }
|
||||||
};
|
};
|
||||||
|
@ -397,7 +394,7 @@ fn path(path: &[u8], cond: PathCondition) -> bool {
|
||||||
PathCondition::Exists => true,
|
PathCondition::Exists => true,
|
||||||
PathCondition::Regular => file_type.is_file(),
|
PathCondition::Regular => file_type.is_file(),
|
||||||
PathCondition::GroupIDFlag => metadata.mode() & S_ISGID != 0,
|
PathCondition::GroupIDFlag => metadata.mode() & S_ISGID != 0,
|
||||||
PathCondition::SymLink => true,
|
PathCondition::SymLink => metadata.file_type().is_symlink(),
|
||||||
PathCondition::FIFO => file_type.is_fifo(),
|
PathCondition::FIFO => file_type.is_fifo(),
|
||||||
PathCondition::Readable => perm(metadata, Permission::Read),
|
PathCondition::Readable => perm(metadata, Permission::Read),
|
||||||
PathCondition::Socket => file_type.is_socket(),
|
PathCondition::Socket => file_type.is_socket(),
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue