+ let mut header: [u8; OLD_HEADER_SIZE] = [0; OLD_HEADER_SIZE];
+ src.read_buf(&mut header[..HEADER1_SIZE])?;
+ let hdr_size = read_u16le(&header)? as usize + 2;
+ validate!(hdr_size == OLD_HEADER_SIZE || hdr_size == NEW_HEADER_SIZE);
+ if hdr_size == OLD_HEADER_SIZE {
+ src.read_buf(&mut header[HEADER1_SIZE..][..768])?;
+ }
+ src.read_buf(&mut header[HEADER2_OFF..])?;