diff options
Diffstat (limited to 'src/basic')
-rw-r--r-- | src/basic/cgroup-util.c | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/src/basic/cgroup-util.c b/src/basic/cgroup-util.c index 7dd8e4e0fc..9ba9f375b0 100644 --- a/src/basic/cgroup-util.c +++ b/src/basic/cgroup-util.c @@ -2001,7 +2001,7 @@ int cg_mask_supported(CGroupMask *ret) { } int cg_kernel_controllers(Set **ret) { - _cleanup_set_free_free_ Set *controllers = NULL; + _cleanup_set_free_ Set *controllers = NULL; _cleanup_fclose_ FILE *f = NULL; int r; @@ -2011,10 +2011,6 @@ int cg_kernel_controllers(Set **ret) { * and controllers that aren't currently accessible (because not mounted). This does not include "name=" * pseudo-controllers. */ - controllers = set_new(&string_hash_ops); - if (!controllers) - return -ENOMEM; - r = fopen_unlocked("/proc/cgroups", "re", &f); if (r == -ENOENT) { *ret = NULL; @@ -2048,7 +2044,7 @@ int cg_kernel_controllers(Set **ret) { if (!cg_controller_is_valid(controller)) return -EBADMSG; - r = set_consume(controllers, TAKE_PTR(controller)); + r = set_ensure_consume(&controllers, &string_hash_ops_free, TAKE_PTR(controller)); if (r < 0) return r; } |