Resolves issue with HuddleVtc1Room adding Emergency device in CustomActivate() which would throw an exception in DeviceManager.ActivateAll() when attempting to iterate the modified devices dictionary

This commit is contained in:
Neil Dorin
2019-04-02 15:58:12 -06:00
parent 3adee8bc30
commit 2655b8f7b8
4 changed files with 14 additions and 10 deletions

View File

@@ -71,7 +71,7 @@ namespace PepperDash.Essentials
} }
/// <summary> /// <summary>
/// Determines if the program is running on a processor (appliance) or server (XiO Edge). /// Determines if the program is running on a processor (appliance) or server (VC-4).
/// ///
/// Sets Global.FilePathPrefix based on platform /// Sets Global.FilePathPrefix based on platform
/// </summary> /// </summary>
@@ -176,7 +176,7 @@ namespace PepperDash.Essentials
} }
// Notify the // Notify the OS that the program intitialization has completed
SystemMonitor.ProgramInitialization.ProgramInitializationComplete = true; SystemMonitor.ProgramInitialization.ProgramInitializationComplete = true;
} }

View File

@@ -71,7 +71,7 @@ namespace PepperDash.Essentials.Room.Config
var microphonePrivacy = props.MicrophonePrivacy; var microphonePrivacy = props.MicrophonePrivacy;
if (microphonePrivacy == null) if (microphonePrivacy == null)
{ {
Debug.Console(0, "ERROR: Cannot create microphone privacy with null properties"); Debug.Console(0, "Cannot create microphone privacy with null properties");
return null; return null;
} }
// Get the MicrophonePrivacy device from the device manager // Get the MicrophonePrivacy device from the device manager

View File

@@ -266,6 +266,16 @@ namespace PepperDash.Essentials
{ {
IsCoolingDownFeedback.FireUpdate(); IsCoolingDownFeedback.FireUpdate();
}; };
// Get Microphone Privacy object, if any
this.MicrophonePrivacy = EssentialsRoomConfigHelper.GetMicrophonePrivacy(PropertiesConfig, this);
Debug.Console(2, this, "Microphone Privacy Config evaluated.");
// Get emergency object, if any
this.Emergency = EssentialsRoomConfigHelper.GetEmergency(PropertiesConfig, this);
Debug.Console(2, this, "Emergency Config evaluated.");
} }
@@ -327,12 +337,6 @@ namespace PepperDash.Essentials
this.DefaultSourceItem = PropertiesConfig.DefaultSourceItem; this.DefaultSourceItem = PropertiesConfig.DefaultSourceItem;
this.DefaultVolume = (ushort)(PropertiesConfig.Volumes.Master.Level * 65535 / 100); this.DefaultVolume = (ushort)(PropertiesConfig.Volumes.Master.Level * 65535 / 100);
// Get Microphone Privacy object, if any
this.MicrophonePrivacy = EssentialsRoomConfigHelper.GetMicrophonePrivacy(PropertiesConfig, this);
// Get emergency object, if any
this.Emergency = EssentialsRoomConfigHelper.GetEmergency(PropertiesConfig, this);
return base.CustomActivate(); return base.CustomActivate();
} }