History

packet header changes and beginning of conversion to QByteArray

Stephen Birarda committed 12 years ago

Commit 4103cc11 parent fd34d2c121 files · +1326 −1607Browse files

Showing the changes to libraries/script-engine/src/ScriptEngine.cpp (1 of 121 files). Show all

Unified · Split

libraries/script-engine/src/ScriptEngine.cpp+7−9
@@ -236,21 +236,19 @@ void ScriptEngine::run() { · 235 unmodified lines
236236 }
237237
238238 if (_isAvatar && _avatarData) {
239− static unsigned char avatarPacket[MAX_PACKET_SIZE];
240− static int numAvatarHeaderBytes = 0;
239+ static QByteArray avatarPacket;
240+ int numAvatarHeaderBytes = 0;
241241
242− if (numAvatarHeaderBytes == 0) {
242+ if (avatarPacket.size() == 0) {
243243 // pack the avatar header bytes the first time
244244 // unlike the _avatar.getBroadcastData these won't change
245− numAvatarHeaderBytes = populateTypeAndVersion(avatarPacket, PACKET_TYPE_HEAD_DATA);
246−
247− // pack the owner UUID for this script
248− numAvatarHeaderBytes += NodeList::getInstance()->packOwnerUUID(avatarPacket);
245+ numAvatarHeaderBytes = populatePacketHeader(avatarPacket, PacketTypeAvatarData);
249246 }
250247
251− int numAvatarPacketBytes = _avatarData->getBroadcastData(avatarPacket + numAvatarHeaderBytes) + numAvatarHeaderBytes;
248+ avatarPacket.resize(numAvatarHeaderBytes);
249+ avatarPacket.append(_avatarData->toByteArray());
252250
253− nodeList->broadcastToNodes(avatarPacket, numAvatarPacketBytes, QSet<NODE_TYPE>() << NODE_TYPE_AVATAR_MIXER);
251+ nodeList->broadcastToNodes(avatarPacket, QSet<NODE_TYPE>() << NODE_TYPE_AVATAR_MIXER);
254252 }
255253
256254 if (willSendVisualDataCallBack) {