aboutsummaryrefslogtreecommitdiff
path: root/src/writer.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/writer.rs')
-rw-r--r--src/writer.rs3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/writer.rs b/src/writer.rs
index 6c76b23..a1f97c1 100644
--- a/src/writer.rs
+++ b/src/writer.rs
@@ -183,7 +183,7 @@ impl<W> CraftWriter<W> {
) -> WriteResult<(&[u8], &mut W)> {
// assume id and body are in raw buf from HEADER_OFFSET .. size + HEADER_OFFSET
let body_size = prepared.id_size + prepared.data_size;
- let buf = get_sized_buf(&mut self.raw_buf, 0, body_size);
+ let buf = get_sized_buf(&mut self.raw_buf, 0, HEADER_OFFSET + body_size);
let packet_data = if let Some(threshold) = self.compression_threshold {
if threshold >= 0 && (threshold as usize) <= body_size {
@@ -334,6 +334,7 @@ struct GrowVecSerializer<'a> {
impl<'a> Serializer for GrowVecSerializer<'a> {
fn serialize_bytes(&mut self, data: &[u8]) -> SerializeResult {
get_sized_buf(self.target, self.at + self.offset, data.len()).copy_from_slice(data);
+ self.at += data.len();
Ok(())
}
}