From: Zbigniew Jędrzejewski-Szmek Date: Wed, 1 Feb 2017 19:30:57 +0000 (-0500) Subject: shared/cgroup-show: extract funtion to query unit cgroup path X-Git-Tag: v233.3~85 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=de3f86951e5c91756ea9d9b5c9e381b6f293a3be shared/cgroup-show: extract funtion to query unit cgroup path …and use it where possible. --- diff --git a/src/login/loginctl.c b/src/login/loginctl.c index 450fbc1eb..56d711c8e 100644 --- a/src/login/loginctl.c +++ b/src/login/loginctl.c @@ -255,7 +255,6 @@ static int list_seats(int argc, char *argv[], void *userdata) { sd_bus *bus = userdata; unsigned k = 0; int r; - assert(bus); assert(argv); @@ -296,35 +295,17 @@ static int list_seats(int argc, char *argv[], void *userdata) { #if 0 /// UNNEEDED by elogind static int show_unit_cgroup(sd_bus *bus, const char *interface, const char *unit, pid_t leader) { + _cleanup_free_ char *cgroup = NULL; _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; - _cleanup_(sd_bus_message_unrefp) sd_bus_message *reply = NULL; - _cleanup_free_ char *path = NULL; - const char *cgroup; unsigned c; int r; assert(bus); assert(unit); - path = unit_dbus_path_from_name(unit); - if (!path) - return log_oom(); - - r = sd_bus_get_property( - bus, - "org.freedesktop.systemd1", - path, - interface, - "ControlGroup", - &error, - &reply, - "s"); - if (r < 0) - return log_error_errno(r, "Failed to query ControlGroup: %s", bus_error_message(&error, r)); - - r = sd_bus_message_read(reply, "s", &cgroup); + r = show_cgroup_get_unit_path_and_warn(bus, unit, &cgroup); if (r < 0) - return bus_log_parse_error(r); + return r; if (isempty(cgroup)) return 0;