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
236 }236 }
237 237
238 if (_isAvatar && _avatarData) {238 if (_isAvatar && _avatarData) {
239 static unsigned char avatarPacket[MAX_PACKET_SIZE];239 static QByteArray avatarPacket;
240 static int numAvatarHeaderBytes = 0;240 int numAvatarHeaderBytes = 0;
241 241
242 if (numAvatarHeaderBytes == 0) {242 if (avatarPacket.size() == 0) {
243 // pack the avatar header bytes the first time243 // pack the avatar header bytes the first time
244 // unlike the _avatar.getBroadcastData these won't change244 // unlike the _avatar.getBroadcastData these won't change
245 numAvatarHeaderBytes = populateTypeAndVersion(avatarPacket, PACKET_TYPE_HEAD_DATA);245 numAvatarHeaderBytes = populatePacketHeader(avatarPacket, PacketTypeAvatarData);
246
247 // pack the owner UUID for this script
248 numAvatarHeaderBytes += NodeList::getInstance()->packOwnerUUID(avatarPacket);
249 }246 }
250 247
251 int numAvatarPacketBytes = _avatarData->getBroadcastData(avatarPacket + numAvatarHeaderBytes) + numAvatarHeaderBytes;248 avatarPacket.resize(numAvatarHeaderBytes);
249 avatarPacket.append(_avatarData->toByteArray());
252 250
253 nodeList->broadcastToNodes(avatarPacket, numAvatarPacketBytes, QSet<NODE_TYPE>() << NODE_TYPE_AVATAR_MIXER);251 nodeList->broadcastToNodes(avatarPacket, QSet<NODE_TYPE>() << NODE_TYPE_AVATAR_MIXER);
254 }252 }
255 253
256 if (willSendVisualDataCallBack) {254 if (willSendVisualDataCallBack) {