File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -902,17 +902,8 @@ pub mod split_extraction {
902902 let limited_reader = ( ( & mut compressed_read_end)
903903 as & mut dyn Read )
904904 . take ( entry. compressed_size ) ;
905- let crypto_reader = make_crypto_reader (
906- entry. compression_method ,
907- entry. crc32 ,
908- None ,
909- false ,
910- limited_reader,
911- None ,
912- None ,
913- #[ cfg( feature = "aes-crypto" ) ]
914- entry. compressed_size ,
915- ) ?;
905+ let crypto_reader =
906+ make_crypto_reader ( entry, limited_reader, None , None ) ?;
916907 let mut decompressing_reader = make_reader (
917908 entry. compression_method ,
918909 entry. crc32 ,
Original file line number Diff line number Diff line change @@ -173,6 +173,17 @@ pub(crate) trait FixedSizeBlock: Pod {
173173 #[ allow( clippy:: wrong_self_convention) ]
174174 fn from_le ( self ) -> Self ;
175175
176+ fn interpret ( input_block : & [ u8 ] ) -> ZipResult < Self > {
177+ let mut block = Self :: zeroed ( ) ;
178+ block. as_bytes_mut ( ) . copy_from_slice ( input_block) ;
179+ let block = Self :: from_le ( block) ;
180+
181+ if block. magic ( ) != Self :: MAGIC {
182+ return Err ( Self :: WRONG_MAGIC_ERROR ) ;
183+ }
184+ Ok ( block)
185+ }
186+
176187 fn parse < R : Read > ( reader : & mut R ) -> ZipResult < Self > {
177188 let mut block = Self :: zeroed ( ) ;
178189 reader. read_exact ( block. as_bytes_mut ( ) ) ?;
You can’t perform that action at this time.
0 commit comments