From 675dd9404a9482c445a414c18b369a62b1aeec65 Mon Sep 17 00:00:00 2001 From: Ben Wiederhake Date: Sun, 31 Mar 2024 16:59:34 +0200 Subject: [PATCH] tee: avoid unnecessarily cloning argument list --- src/uu/tee/src/tee.rs | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/uu/tee/src/tee.rs b/src/uu/tee/src/tee.rs index 0278cb404..b1443dbb9 100644 --- a/src/uu/tee/src/tee.rs +++ b/src/uu/tee/src/tee.rs @@ -148,8 +148,7 @@ fn tee(options: &Options) -> Result<()> { } let mut writers: Vec = options .files - .clone() - .into_iter() + .iter() .filter_map(|file| open(file, options.append, options.output_error.as_ref())) .collect::>>()?; let had_open_errors = writers.len() != options.files.len(); @@ -188,11 +187,11 @@ fn tee(options: &Options) -> Result<()> { /// If that error should lead to program termination, this function returns Some(Err()), /// otherwise it returns None. fn open( - name: String, + name: &str, append: bool, output_error: Option<&OutputErrorMode>, ) -> Option> { - let path = PathBuf::from(name.clone()); + let path = PathBuf::from(name); let mut options = OpenOptions::new(); let mode = if append { options.append(true) @@ -202,7 +201,7 @@ fn open( match mode.write(true).create(true).open(path.as_path()) { Ok(file) => Some(Ok(NamedWriter { inner: Box::new(file), - name, + name: name.to_owned(), })), Err(f) => { show_error!("{}: {}", name.maybe_quote(), f);