diff --git a/src/rlp.rs b/src/rlp.rs index 03a10348c..3e29b783b 100644 --- a/src/rlp.rs +++ b/src/rlp.rs @@ -459,6 +459,8 @@ impl BasicEncoder { fn insert_list_len_at_pos(&mut self, len: usize, pos: usize) -> () { // new bytes let mut res: Vec = vec![]; + // reserve a space equal at least current space + space for length + res.reserve(self.bytes.len() + 1); { let (before_slice, after_slice) = self.bytes.split_at(pos); res.extend(before_slice);