diff --git a/libraries/avatars/src/AvatarHashMap.cpp b/libraries/avatars/src/AvatarHashMap.cpp index b3add74f9c..6a67ef6638 100644 --- a/libraries/avatars/src/AvatarHashMap.cpp +++ b/libraries/avatars/src/AvatarHashMap.cpp @@ -330,25 +330,19 @@ void AvatarHashMap::processAvatarIdentityPacket(QSharedPointer void AvatarHashMap::processBulkAvatarTraits(QSharedPointer message, SharedNodePointer sendingNode) { AvatarTraits::TraitMessageSequence seq; - if (message->getBytesLeftToRead() > sizeof(AvatarTraits::TraitMessageSequence)) { - message->readPrimitive(&seq); + message->readPrimitive(&seq); - auto traitsAckPacket = NLPacket::create(PacketType::BulkAvatarTraitsAck, sizeof(AvatarTraits::TraitMessageSequence), true); - traitsAckPacket->writePrimitive(seq); - auto nodeList = DependencyManager::get(); - SharedNodePointer avatarMixer = nodeList->soloNodeOfType(NodeType::AvatarMixer); - if (!avatarMixer.isNull()) { - // we have a mixer to send to, acknowledge that we received these - // traits. - nodeList->sendPacket(std::move(traitsAckPacket), *avatarMixer); - } - } - else { - qWarning() << "No BulkAvatarTraits packet sequence number."; - return; + auto traitsAckPacket = NLPacket::create(PacketType::BulkAvatarTraitsAck, sizeof(AvatarTraits::TraitMessageSequence), true); + traitsAckPacket->writePrimitive(seq); + auto nodeList = DependencyManager::get(); + SharedNodePointer avatarMixer = nodeList->soloNodeOfType(NodeType::AvatarMixer); + if (!avatarMixer.isNull()) { + // we have a mixer to send to, acknowledge that we received these + // traits. + nodeList->sendPacket(std::move(traitsAckPacket), *avatarMixer); } - while (message->getBytesLeftToRead() >= NUM_BYTES_RFC4122_UUID + sizeof(AvatarTraits::TraitType)) { + while (message->getBytesLeftToRead()) { // read the avatar ID to figure out which avatar this is for auto avatarID = QUuid::fromRfc4122(message->readWithoutCopy(NUM_BYTES_RFC4122_UUID)); @@ -413,9 +407,6 @@ void AvatarHashMap::processBulkAvatarTraits(QSharedPointer mess message->readPrimitive(&traitType); } } - if (message->getBytesLeftToRead() > 0) { - qWarning() << "Leftover bytes in BulkAvatarTraits message"; - } } void AvatarHashMap::processKillAvatar(QSharedPointer message, SharedNodePointer sendingNode) {