From 44f863d7fec0e4373f403aeea72dcb40dac02344 Mon Sep 17 00:00:00 2001 From: David Jantzen Date: Thu, 23 Jan 2025 12:31:53 -0800 Subject: [PATCH] fix looping in listener --- plugin_runner/plugin_runner.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/plugin_runner/plugin_runner.py b/plugin_runner/plugin_runner.py index 45972a68..46faf676 100644 --- a/plugin_runner/plugin_runner.py +++ b/plugin_runner/plugin_runner.py @@ -207,14 +207,16 @@ async def ReloadPlugins( yield ReloadPluginsResponse(success=True) -async def synchronize_plugins(max_iterations: int = -1) -> None: +async def synchronize_plugins(max_iterations: None | int = None) -> None: """Listen for messages on the pubsub channel that will indicate it is necessary to reinstall and reload plugins.""" client, pubsub = get_client() await pubsub.psubscribe(CHANNEL_NAME) log.info("Listening for messages on pubsub channel") iterations: int = 0 - while iterations < max_iterations: - if max_iterations > 0: # max_iterations == -1 means infinite iterations + while True: + if max_iterations is not None: # max_iterations == -1 means infinite iterations + if iterations >= max_iterations: + break iterations += 1 message = await pubsub.get_message(ignore_subscribe_messages=True) if message is not None: