From 0f086dcc755229f6562ffb5068c97f64a2264d3a Mon Sep 17 00:00:00 2001 From: Chris Hennick <4961925+Pr0methean@users.noreply.github.com> Date: Thu, 9 May 2024 13:17:34 -0700 Subject: [PATCH] Fix remaining build errors --- src/write.rs | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/write.rs b/src/write.rs index 74d751a8..56a7ff66 100644 --- a/src/write.rs +++ b/src/write.rs @@ -796,7 +796,7 @@ impl ZipWriter { crc32: raw_values.crc32, compressed_size: raw_values.compressed_size, uncompressed_size: raw_values.uncompressed_size, - file_name: Box::new(""), // Never used for saving + file_name: "".into(), // Never used for saving file_name_raw: name.into().bytes().collect(), extra_field, central_extra_field: options.extended_options.central_extra_data().cloned(), @@ -1755,8 +1755,10 @@ fn write_local_file_header(writer: &mut T, file: &ZipFileData) -> ZipR // file name length writer.write_u16_le(file.file_name_raw.len() as u16)?; // extra field length - let extra_field_length = if file.large_file { 20 } else { 0 } - + file.extra_field.map(|field| field.len()).unwrap_or(0) as u16; + let mut extra_field_length = if file.large_file { 20 } else { 0 }; + if let Some(field) = file.extra_field { + extra_field_length += field.len(); + } writer.write_u16_le(extra_field_length)?; // file name writer.write_all(&file.file_name_raw)?;