From 8424c4e38b47de0bf968b982bc53e8f96dd9a41f Mon Sep 17 00:00:00 2001 From: Stephen Birarda Date: Fri, 6 Sep 2013 15:44:24 -0700 Subject: [PATCH] make DS immediately request assignments instead of waiting one silent loop --- domain-server/src/main.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/domain-server/src/main.cpp b/domain-server/src/main.cpp index 5fcef77a8c..6de926a7a7 100644 --- a/domain-server/src/main.cpp +++ b/domain-server/src/main.cpp @@ -101,9 +101,9 @@ int main(int argc, const char* argv[]) { Assignment avatarAssignment(Assignment::Create, Assignment::AvatarMixer, assignmentPool); while (true) { - if (!nodeList->soloNodeOfType(NODE_TYPE_AUDIO_MIXER)) { - if (assignmentSilenceCount[&audioAssignment] == ASSIGNMENT_SILENCE_MAX_ITERATIONS) { + std::map::iterator countIt = assignmentSilenceCount.find(&audioAssignment); + if (countIt == assignmentSilenceCount.end() || countIt->second == ASSIGNMENT_SILENCE_MAX_ITERATIONS) { nodeList->sendAssignment(audioAssignment); assignmentSilenceCount[&audioAssignment] = 0; } else { @@ -114,7 +114,8 @@ int main(int argc, const char* argv[]) { } if (!nodeList->soloNodeOfType(NODE_TYPE_AVATAR_MIXER)) { - if (assignmentSilenceCount[&avatarAssignment] == ASSIGNMENT_SILENCE_MAX_ITERATIONS) { + std::map::iterator countIt = assignmentSilenceCount.find(&avatarAssignment); + if (countIt == assignmentSilenceCount.end() || countIt->second == ASSIGNMENT_SILENCE_MAX_ITERATIONS) { nodeList->sendAssignment(avatarAssignment); assignmentSilenceCount[&avatarAssignment] = 0; } else {