]> git.ipfire.org Git - pakfire.git/commitdiff
daemon: Don't leak the shutdown event
authorMichael Tremer <michael.tremer@ipfire.org>
Thu, 26 Jun 2025 17:02:58 +0000 (17:02 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Thu, 26 Jun 2025 17:02:58 +0000 (17:02 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/pakfire/daemon.c

index 849726e9b0a9c4f0e3a0334c8c4c86a932a1a97d..8a99026b428af0699c70a8071b41274cc9259686 100644 (file)
@@ -51,6 +51,7 @@ struct pakfire_daemon {
                sd_event_source* sigterm;
                sd_event_source* sigint;
                sd_event_source* sigchld;
+               sd_bus_slot* shutdown;
        } events;
 
        // dbus
@@ -207,7 +208,7 @@ static int pakfire_daemon_setup_bus(struct pakfire_daemon* self) {
        // Add a signal match
        r = sd_bus_match_signal(
                self->bus,
-               NULL,
+               &self->events.shutdown,
 
                // Destination, Path & Interface
                "org.freedesktop.login1",
@@ -313,6 +314,8 @@ static void pakfire_daemon_free(struct pakfire_daemon* self) {
                sd_event_source_unref(self->events.sigint);
        if (self->events.sigchld)
                sd_event_source_unref(self->events.sigchld);
+       if (self->events.shutdown)
+               sd_bus_slot_unref(self->events.shutdown);
 
        if (self->builder)
                pakfire_builder_unref(self->builder);