Ensure BitVec is initialized using a multiple of 8
I found it was panic-ing when supplied a non-power-of-zero len.
This commit is contained in:
parent
7b3f317abf
commit
dbcc88ad67
@ -692,7 +692,10 @@ where
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
trace!("BeaconChain::produce_block: updating state for new block.",);
|
debug!(
|
||||||
|
"Produced block with {} attestations, updating state.",
|
||||||
|
block.body.attestations.len()
|
||||||
|
);
|
||||||
|
|
||||||
per_block_processing_without_verifying_block_signature(&mut state, &block, &self.spec)?;
|
per_block_processing_without_verifying_block_signature(&mut state, &block, &self.spec)?;
|
||||||
|
|
||||||
|
@ -33,9 +33,11 @@ impl BooleanBitfield {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Create a new bitfield with the given length `initial_len` and all values set to `bit`.
|
/// Create a new bitfield with the given length `initial_len` and all values set to `bit`.
|
||||||
pub fn from_elem(inital_len: usize, bit: bool) -> Self {
|
pub fn from_elem(initial_len: usize, bit: bool) -> Self {
|
||||||
|
// BitVec can panic if we don't set the len to be a multiple of 8.
|
||||||
|
let len = ((initial_len + 7) / 8) * 8;
|
||||||
Self {
|
Self {
|
||||||
0: BitVec::from_elem(inital_len, bit),
|
0: BitVec::from_elem(len, bit),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user