From edf414e4f2a899dcffe3c46fdb96fbc66220dcce Mon Sep 17 00:00:00 2001 From: Maxim Prokhorov Date: Tue, 2 Dec 2025 04:50:11 +0300 Subject: [PATCH] rpn(relay): re-fix #2268 --- code/espurna/rpnrules.cpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/code/espurna/rpnrules.cpp b/code/espurna/rpnrules.cpp index 80bfbcbb..ed5388fd 100644 --- a/code/espurna/rpnrules.cpp +++ b/code/espurna/rpnrules.cpp @@ -761,9 +761,14 @@ rpn_error status(rpn_context & ctxt, bool force) { { bool ok = force; if (!ok) { - const auto status = relayTargetStatus(id_uint); - ok = status == RelayStatus::On - || status == RelayStatus::Off; + const auto status_enum = + status_uint == 1 + ? RelayStatus::On + : RelayStatus::Off; + const auto target_status = relayTargetStatus(id_uint); + ok = (status_enum != target_status) + && ((target_status == RelayStatus::On) + || (target_status == RelayStatus::Off)); } if (ok) {