fixed logic bug in bytes_to_u32_vec

This commit is contained in:
colin 2018-12-06 13:36:05 -06:00
parent 046989ad75
commit 2bb85a8d50

View file

@ -63,7 +63,9 @@ where
{ {
let mut output = vec![]; let mut output = vec![];
let mut buffer: [u8; 4] = [0, 0, 0, 0]; let mut buffer: [u8; 4] = [0, 0, 0, 0];
let mut l: usize = 0;
for (i, b) in bytes.enumerate() { for (i, b) in bytes.enumerate() {
l = i;
match i % 4 { match i % 4 {
3 => { 3 => {
buffer[3] = b; buffer[3] = b;
@ -73,7 +75,7 @@ where
idx => buffer[idx] = b, idx => buffer[idx] = b,
} }
} }
if buffer != [0, 0, 0, 0] { if (l+1) % 4 != 0 {
output.push(u32_from_bytes(&buffer)); output.push(u32_from_bytes(&buffer));
} }
output output