diff --git a/src/cat.rs b/src/cat.rs index e3b09a1..6e81ccd 100644 --- a/src/cat.rs +++ b/src/cat.rs @@ -29,6 +29,8 @@ use sysexits::ExitCode; #[derive(Args, Debug)] struct Arguments { + argv0: String, + #[arg(short = "u")] u: bool, @@ -36,15 +38,15 @@ struct Arguments { } fn main() -> ExitCode { - let mut arguments = env::args().collect::>(); - let argv0 = arguments.remove(0); - - let mut args = Arguments::from_args(arguments + let mut args = Arguments::from_args(env::args() + .collect::>() .iter() .map(String::as_str) .collect::>() ).unwrap(); + let argv0 = args.argv0; + let mut output = String::new(); if args.paths.is_empty() { args.paths.push("-".to_string()); }