xibosignage / xibo-dotnetclient

Xibo for Windows .NET Player
GNU Affero General Public License v3.0
63 stars 91 forks source link

Default Layout displayed when layout containing content with future dated content is scheduled alongside valid layout. #192

Closed DanielBW1 closed 3 years ago

DanielBW1 commented 3 years ago

Player Version: R256

Issue: Create and schedule a valid layout to show always. Now create a layout and add expiry times to the content for a date in the future. When you schedule the second layout to show always alongside the first layout, the default layout will instead display.

Notes:

dasgarner commented 3 years ago

When we detect a layout failed to start, we remove it from the active schedule. We then check the count of active layouts to see if there are more than one. This count needs to be tested before we remove the failing Layout.

In addition, when we call NextLayout in Schedule, we try to get the prior layout to see if we need to update any state. However, if we have removed the prior layout from the schedule, this will fail with an index out of bounds. We probably need to refactor how NextLayout works so that we can do our tidy up before removing a failed layout from the schedule.