fix size computation of code item

This commit is contained in:
Jean-Marie 'Histausse' Mineau 2024-01-25 15:57:21 +01:00
parent fb29596184
commit 40f1955dcd
Signed by: histausse
GPG key ID: B66AEEDA9B645AD2

View file

@ -233,6 +233,7 @@ impl Serializable for CodeItem {
+ self.outs_size.size() + self.outs_size.size()
+ self.tries_size_field().size() + self.tries_size_field().size()
+ self.debug_info_off.size() + self.debug_info_off.size()
+ 0u32.size()
+ self.insns.iter().map(|val| val.size()).sum::<usize>() + self.insns.iter().map(|val| val.size()).sum::<usize>()
+ if !self.tries.is_empty() && self.insns.len() % 2 == 1 { + if !self.tries.is_empty() && self.insns.len() % 2 == 1 {
2 2
@ -1214,5 +1215,6 @@ mod test {
]; ];
assert_eq!(code.serialize_to_vec().unwrap(), raw); assert_eq!(code.serialize_to_vec().unwrap(), raw);
assert_eq!(code, CodeItem::deserialize_from_slice(&raw).unwrap()); assert_eq!(code, CodeItem::deserialize_from_slice(&raw).unwrap());
assert_eq!(code.size(), raw.len());
} }
} }