summaryrefslogtreecommitdiff
path: root/shared/src/packets.rs
diff options
context:
space:
mode:
Diffstat (limited to 'shared/src/packets.rs')
-rw-r--r--shared/src/packets.rs3
1 files changed, 2 insertions, 1 deletions
diff --git a/shared/src/packets.rs b/shared/src/packets.rs
index a1636cd..0f1a886 100644
--- a/shared/src/packets.rs
+++ b/shared/src/packets.rs
@@ -125,7 +125,8 @@ impl ReadWrite for Packet {
0x07 => Packet::Parent(Object(read_u128(r)?), Object(read_u128(r)?)),
0x08 => Packet::Sound(Object(read_u128(r)?), Data::read(r)?),
_ => {
- for _ in 0..u16::from_be_bytes([size_tag[0], size_tag[1]]) - 1 {
+ let len = u16::from_be_bytes([size_tag[0], size_tag[1]]);
+ for _ in 0..len.max(1) - 1 {
r.read_exact(&mut [0])?;
}
bail!("unknown packet tag");