mirror of
https://github.com/overte-org/overte.git
synced 2025-07-23 13:44:32 +02:00
Merge pull request #7024 from birarda/audio-mute-crash
fix for audio-mixer mute env crash
This commit is contained in:
commit
8b09cf3b82
1 changed files with 62 additions and 57 deletions
|
@ -552,16 +552,23 @@ void AudioMixer::handleMuteEnvironmentPacket(QSharedPointer<ReceivedMessage> mes
|
|||
auto nodeList = DependencyManager::get<NodeList>();
|
||||
|
||||
if (sendingNode->isAllowedEditor()) {
|
||||
qDebug() << "Received a mute environment packet of" << message->getSize() << "bytes";
|
||||
glm::vec3 position;
|
||||
float radius;
|
||||
|
||||
auto newPacket = NLPacket::create(PacketType::MuteEnvironment, message->getSize());
|
||||
// Copy payload
|
||||
newPacket->write(message->getRawMessage(), message->getSize());
|
||||
auto newPacket = NLPacket::create(PacketType::MuteEnvironment, sizeof(position) + sizeof(radius));
|
||||
|
||||
// read the position and radius from the sent packet
|
||||
message->readPrimitive(&position);
|
||||
message->readPrimitive(&radius);
|
||||
|
||||
// write them to our packet
|
||||
newPacket->writePrimitive(position);
|
||||
newPacket->writePrimitive(radius);
|
||||
|
||||
nodeList->eachNode([&](const SharedNodePointer& node){
|
||||
if (node->getType() == NodeType::Agent && node->getActiveSocket() &&
|
||||
node->getLinkedData() && node != sendingNode) {
|
||||
nodeList->sendPacket(std::move(newPacket), *node);
|
||||
nodeList->sendUnreliablePacket(*newPacket, *node);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
@ -1105,5 +1112,3 @@ void AudioMixer::parseSettingsObject(const QJsonObject &settingsObject) {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in a new issue