From 73fe4e875bae8a2ecebf2dc6ca6555d66a4fa79f Mon Sep 17 00:00:00 2001 From: Benjamin Braatz Date: Wed, 22 Sep 2021 14:36:02 +0200 Subject: [PATCH] Prevent endless loop in Alias. --- controlpi_plugins/util.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/controlpi_plugins/util.py b/controlpi_plugins/util.py index 5834a83..92a82de 100644 --- a/controlpi_plugins/util.py +++ b/controlpi_plugins/util.py @@ -361,12 +361,14 @@ class Alias(BasePlugin): async def alias(self, message: Message) -> None: """Translate and send message.""" - alias_message = Message(self.name, message) - alias_message.update(self._to) - for key in self._translate: - if key in message: - alias_message[self._translate[key]] = message[key] - await self.bus.send(alias_message) + # Prevent endless loop: + if message['sender'] != self.name: + alias_message = Message(self.name, message) + alias_message.update(self._to) + for key in self._translate: + if key in message: + alias_message[self._translate[key]] = message[key] + await self.bus.send(alias_message) async def run(self) -> None: """Run no code proactively.""" -- 2.34.1