1
Fork 0
mirror of https://github.com/RGBCube/uutils-coreutils synced 2025-07-28 19:47:45 +00:00

fix(head): check the whether file exists before unwrap (#1858)

closes https://github.com/uutils/coreutils/issues/1800
This commit is contained in:
Yagiz Degirmenci 2021-03-21 23:27:44 +03:00 committed by GitHub
parent 734368bc92
commit 6c98415340
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 19 additions and 0 deletions

View file

@ -149,6 +149,13 @@ pub fn uumain(args: impl uucore::Args) -> i32 {
first_time = false;
let path = Path::new(file);
if path.is_dir() || !path.metadata().is_ok() {
eprintln!(
"cannot open '{}' for reading: No such file or directory",
&path.to_str().unwrap()
);
continue;
}
let reader = File::open(&path).unwrap();
let mut buffer = BufReader::new(reader);
if !head(&mut buffer, &settings) {

View file

@ -167,3 +167,15 @@ fn test_bug_in_negative_zero_lines() {
//GNU Head returns "a\nb\n"
.stdout_is("");
}
#[test]
fn test_no_such_file_or_directory() {
let result = new_ucmd!().arg("no_such_file.toml").run();
assert_eq!(
true,
result
.stderr
.contains("cannot open 'no_such_file.toml' for reading: No such file or directory")
)
}