aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/zip/driver.rs8
-rw-r--r--src/zip/file/read.rs2
2 files changed, 6 insertions, 4 deletions
diff --git a/src/zip/driver.rs b/src/zip/driver.rs
index e276844..c76d071 100644
--- a/src/zip/driver.rs
+++ b/src/zip/driver.rs
@@ -120,15 +120,17 @@ impl<Io: Read + Seek> ArchiveRead for Zip<Io> {
120 match header.id { 120 match header.id {
121 0x0001 => { 121 0x0001 => {
122 if size == 0xFFFFFFFF { 122 if size == 0xFFFFFFFF {
123 compressed_size = deserialize(&extra_fields[ep..ep + 8]).unwrap(); 123 compressed_size =
124 u64::from_le_bytes(extra_fields[ep..ep + 8].try_into().unwrap());
124 ep += 8; 125 ep += 8;
125 } 126 }
126 if compressed_size == 0xFFFFFFFF { 127 if compressed_size == 0xFFFFFFFF {
127 size = deserialize(&extra_fields[ep..ep + 8]).unwrap(); 128 size = u64::from_le_bytes(extra_fields[ep..ep + 8].try_into().unwrap());
128 ep += 8; 129 ep += 8;
129 } 130 }
130 if header_pointer == 0xFFFFFFFF { 131 if header_pointer == 0xFFFFFFFF {
131 header_pointer = deserialize(&extra_fields[ep..ep + 8]).unwrap(); 132 header_pointer =
133 u64::from_le_bytes(extra_fields[ep..ep + 8].try_into().unwrap());
132 ep += 8; 134 ep += 8;
133 } 135 }
134 if cdr.disk == 0xFFFF { 136 if cdr.disk == 0xFFFF {
diff --git a/src/zip/file/read.rs b/src/zip/file/read.rs
index c5c7e99..6ec7db7 100644
--- a/src/zip/file/read.rs
+++ b/src/zip/file/read.rs
@@ -83,7 +83,7 @@ impl<'d, Io: Read + Seek> ZipFileReader<'d, Io> {
83 info, 83 info,
84 84
85 bounds: (cursor, data_pointer + info.compressed_size), 85 bounds: (cursor, data_pointer + info.compressed_size),
86 cursor: cursor, 86 cursor,
87 }) 87 })
88 } 88 }
89 89