diff --git a/assignment-client/src/avatars/AvatarMixer.cpp b/assignment-client/src/avatars/AvatarMixer.cpp index 81bdd81bba..79d7ff05b5 100644 --- a/assignment-client/src/avatars/AvatarMixer.cpp +++ b/assignment-client/src/avatars/AvatarMixer.cpp @@ -148,9 +148,9 @@ void AvatarMixer::processDatagram(const QByteArray& dataByteArray, const HifiSoc // parse positional data from an node nodeList->updateNodeWithData(avatarNode.data(), senderSockAddr, (unsigned char*) dataByteArray.data(), dataByteArray.size()); - } else { - break; + } + break; } case PACKET_TYPE_KILL_AVATAR: { nodeList->processKillNode(dataByteArray); diff --git a/libraries/shared/src/NodeList.cpp b/libraries/shared/src/NodeList.cpp index 0715478722..77651f8d0d 100644 --- a/libraries/shared/src/NodeList.cpp +++ b/libraries/shared/src/NodeList.cpp @@ -186,7 +186,7 @@ int NodeList::updateNodeWithData(Node *node, const HifiSockAddr& senderSockAddr, node->setLastHeardMicrostamp(usecTimestampNow()); - if (!senderSockAddr.isNull()) { + if (!senderSockAddr.isNull() && !node->getActiveSocket()) { if (senderSockAddr == node->getPublicSocket()) { node->activatePublicSocket(); } else if (senderSockAddr == node->getLocalSocket()) {