From 02ad79a93c943a63565ea83d8946ebf41b995637 Mon Sep 17 00:00:00 2001 From: Fabrice Mouhartem Date: Wed, 16 Jul 2025 09:19:32 +0200 Subject: [PATCH] refactor: deduplicate code --- src/main.rs | 21 +++++++++------------ 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/src/main.rs b/src/main.rs index afab709..c217a7d 100644 --- a/src/main.rs +++ b/src/main.rs @@ -52,7 +52,8 @@ async fn main() -> std::io::Result<()> { .read_to_end_checked(&mut buf) .await .expect("Failed to read the zip individual file."); - if infer::is_image(&buf[..n]) { + let builder = ZipEntryBuilder::new(filename.clone(), Compression::Deflate); + let to_write = if infer::is_image(&buf[..n]) { let extension = Path::new(filename.as_str().expect("Failed to read filename.")) .extension() .and_then(OsStr::to_str) @@ -60,18 +61,14 @@ async fn main() -> std::io::Result<()> { let to_write = compress_image(buf, extension).expect("Failed to compress image"); println!("{}", extension); println!("data len: {}", to_write.len()); - let builder = ZipEntryBuilder::new(filename.clone(), Compression::Deflate); - tmp_zip - .write_entry_whole(builder, &to_write) - .await - .expect("Failed to write a compressed image."); + to_write } else { - let builder = ZipEntryBuilder::new(filename.clone(), Compression::Deflate); - tmp_zip - .write_entry_whole(builder, &buf) - .await - .expect("Failed to write a normal file??"); - } + buf + }; + tmp_zip + .write_entry_whole(builder, &to_write) + .await + .expect("Failed to write a compressed image."); } tmp_zip.close().await.expect("Failed to close the file");