diff options
Diffstat (limited to 'shared/src/packets.rs')
-rw-r--r-- | shared/src/packets.rs | 3 |
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"); |