chiark / gitweb /
cgls: automatic cleanup
[elogind.git] / src / cgls / cgls.c
index 4bec6a827e115e4f9c8e2118fb9faaa32df7c10d..ad59c0127ff71e7cca9a79878dde1f03779b9804 100644 (file)
@@ -29,6 +29,7 @@
 #include "cgroup-show.h"
 #include "cgroup-util.h"
 #include "log.h"
+#include "path-util.h"
 #include "util.h"
 #include "pager.h"
 #include "build.h"
@@ -137,7 +138,7 @@ int main(int argc, char *argv[]) {
                 }
 
         } else {
-                char *p;
+                char _cleanup_free_ *p;
 
                 p = get_current_dir_name();
                 if (!p) {
@@ -149,7 +150,7 @@ int main(int argc, char *argv[]) {
                         printf("Working Directory %s:\n", p);
                         r = show_cgroup_by_path(p, NULL, 0, arg_kernel_threads, arg_all);
                 } else {
-                        char *root = NULL;
+                        char _cleanup_free_ *root = NULL;
                         const char *t = NULL;
 
                         r = cg_get_by_pid(SYSTEMD_CGROUP_CONTROLLER, 1, &root);
@@ -163,10 +164,7 @@ int main(int argc, char *argv[]) {
                         }
 
                         r = show_cgroup(SYSTEMD_CGROUP_CONTROLLER, t, NULL, 0, arg_kernel_threads, arg_all);
-                        free(root);
                 }
-
-                free(p);
         }
 
         if (r < 0)