From 4b7d4d72901ed1b168595be63739f0a58f459c5c Mon Sep 17 00:00:00 2001 From: Atlante45 Date: Fri, 13 Feb 2015 10:56:04 +0100 Subject: [PATCH] Don't use DataStream to write MuteEnv packet --- interface/src/DatagramProcessor.cpp | 4 ++-- libraries/audio-client/src/AudioClient.cpp | 7 ++++--- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/interface/src/DatagramProcessor.cpp b/interface/src/DatagramProcessor.cpp index 9c56f8bc8d..02d3c62765 100644 --- a/interface/src/DatagramProcessor.cpp +++ b/interface/src/DatagramProcessor.cpp @@ -129,12 +129,12 @@ void DatagramProcessor::processDatagrams() { if (incomingType == PacketTypeMuteEnvironment) { glm::vec3 position; - float radius, distance; + float radius; int headerSize = numBytesForPacketHeaderGivenPacketType(PacketTypeMuteEnvironment); memcpy(&position, incomingPacket.constData() + headerSize, sizeof(glm::vec3)); memcpy(&radius, incomingPacket.constData() + headerSize + sizeof(glm::vec3), sizeof(float)); - distance = glm::distance(DependencyManager::get()->getMyAvatar()->getPosition(), + float distance = glm::distance(DependencyManager::get()->getMyAvatar()->getPosition(), position); mute = mute && (distance < radius); diff --git a/libraries/audio-client/src/AudioClient.cpp b/libraries/audio-client/src/AudioClient.cpp index 9f569c9893..dba24c6703 100644 --- a/libraries/audio-client/src/AudioClient.cpp +++ b/libraries/audio-client/src/AudioClient.cpp @@ -871,13 +871,14 @@ void AudioClient::processReceivedSamples(const QByteArray& inputBuffer, QByteArr void AudioClient::sendMuteEnvironmentPacket() { QByteArray mutePacket = byteArrayWithPopulatedHeader(PacketTypeMuteEnvironment); - QDataStream mutePacketStream(&mutePacket, QIODevice::Append); + int headerSize = mutePacket.size(); const float MUTE_RADIUS = 50; glm::vec3 currentSourcePosition = _positionGetter(); - mutePacketStream.writeBytes(reinterpret_cast(¤tSourcePosition), sizeof(glm::vec3)); - mutePacketStream.writeBytes(reinterpret_cast(&MUTE_RADIUS), sizeof(float)); + mutePacket.resize(mutePacket.size() + sizeof(glm::vec3) + sizeof(float)); + memcpy(mutePacket.data() + headerSize, ¤tSourcePosition, sizeof(glm::vec3)); + memcpy(mutePacket.data() + headerSize + sizeof(glm::vec3), &MUTE_RADIUS, sizeof(float)); // grab our audio mixer from the NodeList, if it exists auto nodelist = DependencyManager::get();