Merge pull request #76 from cakebaker/rev_fix_pedantic_clippy_warnings
rev: fix two pedantic clippy warnings
This commit is contained in:
@ -24,24 +24,22 @@ pub fn uumain(args: impl uucore::Args) -> UResult<()> {
|
|||||||
let zero = matches.get_flag(options::ZERO);
|
let zero = matches.get_flag(options::ZERO);
|
||||||
|
|
||||||
let sep = if zero { b'\0' } else { b'\n' };
|
let sep = if zero { b'\0' } else { b'\n' };
|
||||||
match files {
|
|
||||||
Some(files) => {
|
if let Some(files) = files {
|
||||||
for path in files {
|
for path in files {
|
||||||
let Ok(file) = std::fs::File::open(path) else {
|
let Ok(file) = std::fs::File::open(path) else {
|
||||||
uucore::error::set_exit_code(1);
|
uucore::error::set_exit_code(1);
|
||||||
uucore::show_error!("cannot open {path}: No such file or directory");
|
uucore::show_error!("cannot open {path}: No such file or directory");
|
||||||
continue;
|
continue;
|
||||||
};
|
};
|
||||||
if let Err(err) = rev_stream(file, sep) {
|
if let Err(err) = rev_stream(file, sep) {
|
||||||
uucore::error::set_exit_code(1);
|
uucore::error::set_exit_code(1);
|
||||||
uucore::show_error!("cannot read {path}: {err}");
|
uucore::show_error!("cannot read {path}: {err}");
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
None => {
|
} else {
|
||||||
let stdin = std::io::stdin().lock();
|
let stdin = std::io::stdin().lock();
|
||||||
let _ = rev_stream(stdin, sep);
|
let _ = rev_stream(stdin, sep);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Ok(())
|
Ok(())
|
||||||
@ -54,15 +52,15 @@ fn rev_stream(stream: impl Read, sep: u8) -> std::io::Result<()> {
|
|||||||
loop {
|
loop {
|
||||||
buf.clear();
|
buf.clear();
|
||||||
stream.read_until(sep, &mut buf)?;
|
stream.read_until(sep, &mut buf)?;
|
||||||
if buf.last().copied() != Some(sep) {
|
if buf.last().copied() == Some(sep) {
|
||||||
buf.reverse();
|
|
||||||
stdout.write_all(&buf)?;
|
|
||||||
break;
|
|
||||||
} else {
|
|
||||||
buf.pop();
|
buf.pop();
|
||||||
buf.reverse();
|
buf.reverse();
|
||||||
buf.push(sep);
|
buf.push(sep);
|
||||||
stdout.write_all(&buf)?;
|
stdout.write_all(&buf)?;
|
||||||
|
} else {
|
||||||
|
buf.reverse();
|
||||||
|
stdout.write_all(&buf)?;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Ok(())
|
Ok(())
|
||||||
|
Reference in New Issue
Block a user