diff --git a/src/Sequence.cpp b/src/Sequence.cpp index 1a1949dc9..10ce8a96e 100644 --- a/src/Sequence.cpp +++ b/src/Sequence.cpp @@ -81,9 +81,13 @@ Sequence::Sequence() : m_blankBetweenSequences = getSettingInt("blankBetweenSequences"); m_prioritize_sequence_over_bridge = false; - std::string bridgeDataPriority = getSetting("bridgeDataPriority", "Prioritize Bridge"); + m_warn_if_bridging = false; + std::string bridgeDataPriority = getSetting("bridgeDataPriority", "Warn If Sequence Running"); if (bridgeDataPriority == "Prioritize Sequence") { m_prioritize_sequence_over_bridge = true; + } else if (bridgeDataPriority == "Warn If Sequence Running") { + m_prioritize_sequence_over_bridge = true; + m_warn_if_bridging = true; } } @@ -792,8 +796,13 @@ void Sequence::CloseSequenceFile(void) { } void Sequence::SetBridgeData(uint8_t* data, int startChannel, int len, uint64_t expireMS) { - if (m_prioritize_sequence_over_bridge && this->IsSequenceRunning()) { - return; + if (this->IsSequenceRunning()) { + if (m_warn_if_bridging) { + WarningHolder::AddWarningTimeout("Received bridging data while sequence is running.", 60); + } + if (m_prioritize_sequence_over_bridge) { + return; + } } if (!m_bridgeData) { diff --git a/src/Sequence.h b/src/Sequence.h index d55b37960..16cc59c9e 100644 --- a/src/Sequence.h +++ b/src/Sequence.h @@ -74,6 +74,7 @@ class Sequence { void ProcessVariableHeaders(); void SetLastFrameData(FSEQFile::FrameData* data); bool m_prioritize_sequence_over_bridge; + bool m_warn_if_bridging = false; class BridgeRangeData { public: diff --git a/www/settings.json b/www/settings.json index 38019a674..21a00a1eb 100644 --- a/www/settings.json +++ b/www/settings.json @@ -690,8 +690,9 @@ "restart": 1, "reloadUI": 0, "type": "select", - "default": "Prioritize Bridge", + "default": "Warn If Sequence Running", "options": { + "Warn If Sequence Running": "Warn If Sequence Running", "Prioritize Bridge": "Prioritize Bridge", "Prioritize Sequence": "Prioritize Sequence" }