listeners: systemd: fix: unreference bus and error when it's not needed 85/129985/1
authorKrzysztof Opasiak <k.opasiak@samsung.com>
Thu, 18 May 2017 17:21:53 +0000 (19:21 +0200)
committerKrzysztof Opasiak <k.opasiak@samsung.com>
Thu, 18 May 2017 17:21:53 +0000 (19:21 +0200)
Change-Id: Ia88f074aa935745f06af695e08c1586a21751b1b
Signed-off-by: Krzysztof Opasiak <k.opasiak@samsung.com>
src/listeners/systemd.c

index 21abc4e4fadd4ac9c29bf5e8750872a351c50cb5..672e1d381737b11379b8731f1821b37716cc31b8 100644 (file)
@@ -28,6 +28,7 @@
 #include "log.h"
 #include "module.h"
 #include "service_failed_event.h"
+#include "systemd_dbus.h"
 
 struct systemd_listener {
        struct faultd_module module;
@@ -53,7 +54,7 @@ static int on_unit_properties_changed(sd_bus_message *m, void *userdata,
                log_error_errno(rc, "Invalid message format.");
                goto finish;
        }
-       if (strcmp("org.freedesktop.systemd1.Unit", interface) != 0) {
+       if (strcmp(SYSTEMD_UNIT_INTERFACE, interface) != 0) {
                rc = 0;
                goto finish;
        }
@@ -173,8 +174,8 @@ finish:
 
 static int systemd_listener_init(struct faultd_module *module, sd_event* loop)
 {
-       sd_bus_error error = SD_BUS_ERROR_NULL;
-       sd_bus *bus = NULL;
+       _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL;
+       _cleanup_(sd_bus_unrefp) sd_bus *bus = NULL;
        int rc;
 
        rc = sd_bus_default_system(&bus);
@@ -204,9 +205,9 @@ static int systemd_listener_init(struct faultd_module *module, sd_event* loop)
        }
 
        rc = sd_bus_call_method(bus,
-                                                       "org.freedesktop.systemd1",
-                                                       "/org/freedesktop/systemd1",
-                                                       "org.freedesktop.systemd1.Manager",
+                                                       SYSTEMD_SERVICE,
+                                                       SYSTEMD_OBJ,
+                                                       SYSTEMD_MANAGER_INTERFACE,
                                                        "Subscribe",
                                                        &error,
                                                        NULL, NULL);