From e376b71cf4d5f916be716096884b6a46ff006c0b Mon Sep 17 00:00:00 2001 From: Jiahao XU Date: Sun, 12 Jun 2022 17:05:21 +1000 Subject: [PATCH] Simplify `extract_tar_based_stream_and_visit` Rm unused param `path` and the unnecessary `fs::create_dir_all` since the tar will not be extracted to disk. Signed-off-by: Jiahao XU --- src/helpers.rs | 2 +- src/helpers/async_extracter.rs | 10 ++-------- 2 files changed, 3 insertions(+), 9 deletions(-) diff --git a/src/helpers.rs b/src/helpers.rs index 7a222d3f..a4899bf9 100644 --- a/src/helpers.rs +++ b/src/helpers.rs @@ -109,7 +109,7 @@ pub async fn download_tar_based_and_visit< let stream = resp.bytes_stream(); - let visitor = extract_tar_based_stream_and_visit(stream, path, fmt, visitor).await?; + let visitor = extract_tar_based_stream_and_visit(stream, fmt, visitor).await?; debug!("Download OK, written to file: '{}'", path.display()); diff --git a/src/helpers/async_extracter.rs b/src/helpers/async_extracter.rs index 80ed397c..3d948de3 100644 --- a/src/helpers/async_extracter.rs +++ b/src/helpers/async_extracter.rs @@ -233,21 +233,15 @@ where pub async fn extract_tar_based_stream_and_visit( stream: impl Stream> + Unpin, - output: &Path, fmt: TarBasedFmt, mut visitor: V, ) -> Result where BinstallError: From, { - let path = output.to_owned(); - extract_impl(stream, move |mut rx| { - fs::create_dir_all(path.parent().unwrap())?; - - extract_compressed_from_readable(ReadableRx::new(&mut rx), fmt, Op::Visit(&mut visitor))?; - - Ok(visitor) + extract_compressed_from_readable(ReadableRx::new(&mut rx), fmt, Op::Visit(&mut visitor)) + .map(|_| visitor) }) .await }