From 89aad014685161318318737dc0e350ee4dae982d Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Mon, 19 Feb 2024 23:21:58 +0000 Subject: [PATCH] Fix infinite loop when invoking SetFilterA dbus method more than once. Also applies to SetFilterAAAA. Thanks to Clayton Craft for spotting the issue. --- src/dbus.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/dbus.c b/src/dbus.c index ad6a4f3..84a8d97 100644 --- a/src/dbus.c +++ b/src/dbus.c @@ -833,6 +833,7 @@ DBusHandlerResult message_handler(DBusConnection *connection, if (!done) { + done = 1; list.next = daemon->filter_rr; daemon->filter_rr = &list; } @@ -844,6 +845,7 @@ DBusHandlerResult message_handler(DBusConnection *connection, if (!done) { + done = 1; list.next = daemon->filter_rr; daemon->filter_rr = &list; }