aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2019-10-24 19:46:18 +0200
committerShauren <shauren.trinity@gmail.com>2019-10-24 19:46:18 +0200
commitd3bf53772b47924f43553e169ba3c121307c55c8 (patch)
tree8a624a9a4abe940ea5fdae9683405c1edda18594
parent0c3e69d5f57cccead08b4ebe3767050f9e1687f5 (diff)
Core/PacketIO: Fixed writing dynamic updatefield mask when size is exactly 32
-rw-r--r--src/server/game/Entities/Object/Updates/UpdateField.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/server/game/Entities/Object/Updates/UpdateField.cpp b/src/server/game/Entities/Object/Updates/UpdateField.cpp
index 3ebd711e4fa..a8855522f4d 100644
--- a/src/server/game/Entities/Object/Updates/UpdateField.cpp
+++ b/src/server/game/Entities/Object/Updates/UpdateField.cpp
@@ -30,6 +30,11 @@ void UF::WriteDynamicFieldUpdateMask(std::size_t size, std::vector<uint32> const
for (std::size_t block = 0; block < size / 32; ++block)
data << uint32(updateMask[block]);
}
+ else if (size == 32)
+ {
+ data.WriteBits(updateMask.back(), 32);
+ return;
+ }
if (size % 32)
data.WriteBits(updateMask.back(), size % 32);