From 40ba4c47cf908a17287d4828b05205f20b091b69 Mon Sep 17 00:00:00 2001 From: Dreaded_X Date: Fri, 26 Apr 2024 06:00:53 +0200 Subject: [PATCH] Fix: contact sensor turns off lights even if they were already on --- src/devices/contact_sensor.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/devices/contact_sensor.rs b/src/devices/contact_sensor.rs index 3fba893..45ff35b 100644 --- a/src/devices/contact_sensor.rs +++ b/src/devices/contact_sensor.rs @@ -159,9 +159,10 @@ impl OnMqtt for ContactSensor { if let Some(trigger) = &mut self.trigger { if !self.is_closed { - for (light, _) in &mut trigger.devices { + for (light, previous) in &mut trigger.devices { let mut light = light.write().await; if let Some(light) = As::::cast_mut(light.as_mut()) { + *previous = light.is_on().await.unwrap(); light.set_on(true).await.ok(); } }