diff --git a/src/read.rs b/src/read.rs index 0691a397..adcdc8e8 100644 --- a/src/read.rs +++ b/src/read.rs @@ -418,8 +418,11 @@ fn parse_extra_field(file: &mut ZipFileData, data: &[u8]) -> ZipResult<()> file.compressed_size = reader.read_u64::()?; len_left -= 8; } + if file.header_start == 0xFFFFFFFF { + file.header_start = reader.read_u64::()?; + len_left -= 8; + } // Unparsed fields: - // u64: relative header offset // u32: disk start number }, _ => {},