From 722679247ab0f7b1a4ed6f3e40b6eea084a411f3 Mon Sep 17 00:00:00 2001 From: emma Date: Fri, 23 Aug 2024 14:31:02 -0600 Subject: [PATCH] hru(1): uses new sysexits --- src/hru.rs | 28 ++++++++++++---------------- 1 file changed, 12 insertions(+), 16 deletions(-) diff --git a/src/hru.rs b/src/hru.rs index e07ec39..70981a3 100644 --- a/src/hru.rs +++ b/src/hru.rs @@ -90,7 +90,7 @@ fn main() -> ExitCode { let promises = Promises::new("stdio"); if let Err(e) = pledge(Some(promises), None) { eprintln!("{}: {}", argv[0], e.strerror()); - return ExitCode::from(EX_OSERR as u8); + return ExitCode::from(EX_OSERR); } } @@ -104,30 +104,26 @@ fn main() -> ExitCode { buf.clear(); f }, - Err(err) => { - eprintln!("{}: {}", argv[0], err); - return ExitCode::from(EX_DATAERR as u8); + Err(e) => { + eprintln!("{}: {}", argv[0], e); + return ExitCode::from(EX_DATAERR); }, }; - let (number, prefix) = match convert(n) { - Ok(x) => x, - Err(err) => { - eprintln!("{}: {}", argv[0], err); - return ExitCode::from(EX_SOFTWARE as u8); - }, - }; + let (number, prefix) = convert(n).unwrap_or_else(|e| { + eprintln!("{}: {}", argv[0], e); + exit(EX_SOFTWARE.into()); + }); let si_prefix = format!("{}B", prefix.1); /* round output number to one decimal place */ let out = ((number * 10.0).round() / 10.0).to_string(); - stdout().write_all(format!("{} {}\n", out, si_prefix).as_bytes()) - .unwrap_or_else(|e| { - eprintln!("{}: {}", argv[0], e.strerror()); - exit(EX_IOERR); - }); + if let Err(e) = stdout().write_all(format!("{} {}\n", out, si_prefix).as_bytes()) { + eprintln!("{}: {}", argv[0], e.strerror()); + return ExitCode::from(EX_IOERR); + } } ExitCode::SUCCESS