Skip to content

Commit b717e17

Browse files
committed
Fix wasModified logic check for optional OSD and WMark.
1 parent 823340a commit b717e17

File tree

2 files changed

+5
-11
lines changed

2 files changed

+5
-11
lines changed

src/app/clusters/camera-av-stream-management-server/camera-av-stream-management-server.cpp

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1004,15 +1004,12 @@ void CameraAVStreamMgmtServer::ModifyVideoStream(const uint16_t streamID, const
10041004
bool wasModified = false;
10051005
if (waterMarkEnabled.HasValue())
10061006
{
1007-
wasModified = (stream.watermarkEnabled.HasValue() != waterMarkEnabled.HasValue()) ||
1008-
(stream.watermarkEnabled.HasValue() && waterMarkEnabled.HasValue() &&
1009-
stream.watermarkEnabled.Value() != waterMarkEnabled.Value());
1007+
wasModified = !stream.watermarkEnabled.HasValue() || stream.watermarkEnabled.Value() != waterMarkEnabled.Value();
10101008
stream.watermarkEnabled = waterMarkEnabled;
10111009
}
10121010
if (osdEnabled.HasValue())
10131011
{
1014-
wasModified = wasModified || (stream.OSDEnabled.HasValue() != osdEnabled.HasValue()) ||
1015-
(stream.OSDEnabled.HasValue() && osdEnabled.HasValue() && stream.OSDEnabled.Value() != osdEnabled.Value());
1012+
wasModified = wasModified || !stream.OSDEnabled.HasValue() || stream.OSDEnabled.Value() != osdEnabled.Value();
10161013
stream.OSDEnabled = osdEnabled;
10171014
}
10181015
if (wasModified)
@@ -1035,15 +1032,12 @@ void CameraAVStreamMgmtServer::ModifySnapshotStream(const uint16_t streamID, con
10351032
bool wasModified = false;
10361033
if (waterMarkEnabled.HasValue())
10371034
{
1038-
wasModified = (stream.watermarkEnabled.HasValue() != waterMarkEnabled.HasValue()) ||
1039-
(stream.watermarkEnabled.HasValue() && waterMarkEnabled.HasValue() &&
1040-
stream.watermarkEnabled.Value() != waterMarkEnabled.Value());
1035+
wasModified = !stream.watermarkEnabled.HasValue() || stream.watermarkEnabled.Value() != waterMarkEnabled.Value();
10411036
stream.watermarkEnabled = waterMarkEnabled;
10421037
}
10431038
if (osdEnabled.HasValue())
10441039
{
1045-
wasModified = wasModified || (stream.OSDEnabled.HasValue() != osdEnabled.HasValue()) ||
1046-
(stream.OSDEnabled.HasValue() && osdEnabled.HasValue() && stream.OSDEnabled.Value() != osdEnabled.Value());
1040+
wasModified = wasModified || !stream.OSDEnabled.HasValue() || stream.OSDEnabled.Value() != osdEnabled.Value();
10471041
stream.OSDEnabled = osdEnabled;
10481042
}
10491043
if (wasModified)

src/python_testing/TC_AVSMTestBase.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
logger = logging.getLogger(__name__)
2828

2929

30-
def wmark_osd_matcher(attribute_id: int, wmark: bool, osd: bool, wmark_check: bool, osd_check: bool) -> "AttributeMatcher":
30+
def wmark_osd_matcher(attribute_id: int, wmark: bool | None, osd: bool | None, wmark_check: bool, osd_check: bool) -> "AttributeMatcher":
3131
def predicate(report: AttributeValue) -> bool:
3232
if report.attribute != attribute_id:
3333
return False

0 commit comments

Comments
 (0)