Replace read with read_exact
This commit is contained in:
parent
858ac2e2a5
commit
18fbcfa71f
|
@ -25,7 +25,7 @@ impl VocFile {
|
|||
|
||||
// Signature - Creative Voice File
|
||||
let mut signature1_buffer: [u8; 19] = [0; 19];
|
||||
drop(file.read(&mut signature1_buffer));
|
||||
file.read_exact(&mut signature1_buffer).unwrap();
|
||||
let signature1 = std::str::from_utf8(&signature1_buffer).unwrap();
|
||||
if signature1 != Self::SIGNATURE1 {
|
||||
panic!("Bad file. Expected \"{}\" got \"{}\"", Self::SIGNATURE1, signature1);
|
||||
|
@ -33,20 +33,20 @@ impl VocFile {
|
|||
|
||||
// Signature - 1A 1A 00
|
||||
let mut signature2_buffer: [u8; 3] = [0; 3];
|
||||
drop(file.read(&mut signature2_buffer));
|
||||
file.read_exact(&mut signature2_buffer).unwrap();
|
||||
if signature2_buffer != Self::SIGNATURE2 {
|
||||
panic!("Bad file. Expected {:02X?} got {:02X?}", Self::SIGNATURE2, signature2_buffer);
|
||||
}
|
||||
|
||||
// Version
|
||||
let mut version_buffer: [u8; 2] = [0; 2];
|
||||
drop(file.read(&mut version_buffer));
|
||||
file.read_exact(&mut version_buffer).unwrap();
|
||||
let version_int = i16::from_le_bytes(version_buffer);
|
||||
let version = (version_buffer[1], version_buffer[0]);
|
||||
|
||||
// Version checksum
|
||||
let mut checksum_buffer: [u8; 2] = [0; 2];
|
||||
drop(file.read(&mut checksum_buffer));
|
||||
file.read_exact(&mut checksum_buffer).unwrap();
|
||||
let checksum_result = checksum_buffer == Self::checksum(version_int);
|
||||
|
||||
let mut voc_file = VocFile { version, checksum: checksum_result, blocks: Vec::new() };
|
||||
|
@ -56,7 +56,7 @@ impl VocFile {
|
|||
|
||||
// Block Type
|
||||
let mut block_type_buffer: [u8; 1] = [0];
|
||||
drop(file.read(&mut block_type_buffer));
|
||||
file.read_exact(&mut block_type_buffer).unwrap();
|
||||
let block_type = match block_type_buffer[0] {
|
||||
0 => BlockType::Terminator,
|
||||
1 => BlockType::SoundData,
|
||||
|
|
Loading…
Reference in New Issue