From: Benjamin Braatz Date: Wed, 22 Sep 2021 12:36:02 +0000 (+0200) Subject: Prevent endless loop in Alias. X-Git-Tag: v0.3.0~14 X-Git-Url: http://git.graph-it.com/?a=commitdiff_plain;h=73fe4e875bae8a2ecebf2dc6ca6555d66a4fa79f;p=graphit%2Fcontrolpi.git Prevent endless loop in Alias. --- 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."""