From 9a89ef30d31ebd32360e9195cd0c02f3fc8a6631 Mon Sep 17 00:00:00 2001 From: "Peter F. Patel-Schneider" Date: Mon, 19 Sep 2022 15:37:44 -0400 Subject: [PATCH] rules: fix bug causing repeated later execution --- lib/logitech_receiver/diversion.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/logitech_receiver/diversion.py b/lib/logitech_receiver/diversion.py index 45d054a9..0d127542 100644 --- a/lib/logitech_receiver/diversion.py +++ b/lib/logitech_receiver/diversion.py @@ -398,6 +398,10 @@ class Rule(RuleComponent): return result return result + def once(self, feature, notification, device, status, last_result): + self.evaluate(feature, notification, device, status, last_result) + return False + def data(self): return {'Rule': [c.data() for c in self.components]} @@ -1115,7 +1119,7 @@ class Later(Action): def evaluate(self, feature, notification, device, status, last_result): if self.delay and self.rule: - GLib.timeout_add_seconds(self.delay, Rule.evaluate, self.rule, feature, notification, device, status, last_result) + GLib.timeout_add_seconds(self.delay, Rule.once, self.rule, feature, notification, device, status, last_result) return None def data(self):