-
Notifications
You must be signed in to change notification settings - Fork 0
[BUG]-DM Chassis Bridging Fails when HDCP Object Missing #14
Copy link
Copy link
Open
Labels
bugSomething isn't workingSomething isn't workingplanningfuture direction and discussionfuture direction and discussion
Description
Was this bug identified in a specific build version?
1.12.1 - though I imagine it's been here for quite some time.
Describe the bug
If the configuration of an DM-MDXXX Switcher does not contain the inputSlotSupportsHdcp2 object, Linking to the API will fail.
Stacktrace
Include a stack trace of the exception if possible.
[09:50:54.000]App 1:[dmMd16x16-1] Linking to Trilist 'C0'
[09:50:54.000]App 1:Port value for input card 1 is set
[09:50:54.000]App 1:Port is HdmiInputWithCec
[09:50:54.000]App 1:[dmMdBridge02] ERROR: Device dmMdBridge02 PostActivation failure: KeyNotFoundException
[09:50:54.000]App 1:[dmMdBridge02] Stack Trace: at System.ThrowHelper.ThrowKeyNotFoundException()
at System.Collections.Generic.Dictionary`2.get_Item(UInt32 key)
at PepperDash.Essentials.DM.DmChassisController.LinkHdmiInputToApi(BasicTriList trilist, UInt32 ioSlot, DmChassisControllerJoinMap joinMap, UInt32 ioSlotJoin)
at PepperDash.Essentials.DM.DmChassisController.LinkToApi(BasicTriList trilist, UInt32 joinStart, String joinMapKey, EiscApiAdvanced bridge)
at PepperDash.Essentials.Core.Bridges.EiscApiAdvanced.LinkDevices()
at PepperDash.Core.Device.<PostActivate>b__2(Action a)
at System.Collections.Generic.List`1.ForEach(Action`1 action)
at PepperDash.Core.Device.PostActivate()
at PepperDash.Essentials.Core.DeviceManager.ActivateAll()
at PepperDash.Essentials.ControlSystem.Load()
at PepperDash.Essentials.ControlSystem.GoWithLoad()
at PepperDash.Essentials.ControlSystem.StartSystem(Object obj)
at Crestron.SimplSharp.CTimer.a(Object A_0)
at System.Threading.Timer.ring()
To Reproduce
Steps to reproduce the behavior:
- Build a DM Chassis device config without the
inputSlotSupportsHdcp2object. - Bridge this device to another slot.
Expected behavior
This should at the bare minimum fail gracefully to a default state and note the lack of this config rather than simply fail with a difficult to parse stack trace.
Additional context
This was discovered while upgrading an essentials installation from 1.14.21 - which means this is a breaking change within a major version and should probably be fixed.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't workingplanningfuture direction and discussionfuture direction and discussion