let edata = if br.tell() - start_pos + 4 < size {
//todo skip various common atoms
let edata_size = br.read_u32be()? as usize;
- let mut buf = vec![0; edata_size];
+ validate!(edata_size >= 4);
+ let mut buf = vec![0; edata_size - 4];
br.read_buf(buf.as_mut_slice())?;
Some(buf)
} else {